diff options
author | aclement <aclement> | 2004-11-22 08:31:23 +0000 |
---|---|---|
committer | aclement <aclement> | 2004-11-22 08:31:23 +0000 |
commit | 6d7e965c46e93c74f910d03bc279c25404335418 (patch) | |
tree | 1980f6c0d7e314d1621dedd3066eb1dd57c1ab09 /bcel-builder | |
parent | 4345b4b36f5b29b0b6783cb1985a52157c1ce3f5 (diff) | |
download | aspectj-6d7e965c46e93c74f910d03bc279c25404335418.tar.gz aspectj-6d7e965c46e93c74f910d03bc279c25404335418.zip |
Fix some stuff that Wes pointed out: addEmptyConstructor() in ClassGen has always been broken and the src.zip for BCEL that was generated included test imports.
Diffstat (limited to 'bcel-builder')
41 files changed, 266 insertions, 187 deletions
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapEntry.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapEntry.java index d6f2d1637..e20d11f5f 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapEntry.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapEntry.java @@ -54,15 +54,16 @@ package org.aspectj.apache.bcel.classfile; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.Constants; -import java.io.*; +import java.io.DataInputStream; +import java.io.DataOutputStream; +import java.io.IOException; /** * This class represents a stack map entry recording the types of * local variables and the the of stack items at a given byte code offset. * See CLDC specification §5.3.1.2 * - * @version $Id: StackMapEntry.java,v 1.3 2004/11/19 16:45:18 aclement Exp $ + * @version $Id: StackMapEntry.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * @see StackMap * @see StackMapType diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/CPInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/CPInstruction.java index 75903ae22..de89b5fd2 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/CPInstruction.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/CPInstruction.java @@ -54,13 +54,13 @@ package org.aspectj.apache.bcel.generic; * <http://www.apache.org/>. */ -import java.io.*; -import org.aspectj.apache.bcel.util.ByteSequence; -import org.aspectj.apache.bcel.Constants; +import java.io.DataOutputStream; +import java.io.IOException; + import org.aspectj.apache.bcel.classfile.Constant; import org.aspectj.apache.bcel.classfile.ConstantClass; import org.aspectj.apache.bcel.classfile.ConstantPool; -import org.aspectj.apache.bcel.classfile.tests.*; +import org.aspectj.apache.bcel.util.ByteSequence; /** * Abstract super class for instructions that use an index into the @@ -70,7 +70,7 @@ import org.aspectj.apache.bcel.classfile.tests.*; * @see LDC * @see INVOKEVIRTUAL * - * @version $Id: CPInstruction.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: CPInstruction.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public abstract class CPInstruction extends Instruction diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGen.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGen.java index 8d2c48e92..93e5ca8fb 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGen.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGen.java @@ -54,6 +54,10 @@ package org.aspectj.apache.bcel.generic; * <http://www.apache.org/>. */ +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.AccessFlags; import org.aspectj.apache.bcel.classfile.Attribute; @@ -65,19 +69,14 @@ import org.aspectj.apache.bcel.classfile.SourceFile; import org.aspectj.apache.bcel.classfile.Utility; import org.aspectj.apache.bcel.classfile.annotation.Annotation; import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleAnnotations; -import org.aspectj.apache.bcel.classfile.tests.*; import org.aspectj.apache.bcel.generic.annotation.AnnotationGen; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - /** * Template class for building up a java class. May be initialized with an * existing java class (file). * * @see JavaClass - * @version $Id: ClassGen.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: ClassGen.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public class ClassGen extends AccessFlags implements Cloneable { @@ -302,7 +301,7 @@ public class ClassGen extends AccessFlags implements Cloneable { MethodGen mg = new MethodGen(access_flags, Type.VOID, Type.NO_ARGS, null, "<init>", class_name, il, cp); mg.setMaxStack(1); - //mg.setMaxLocals(); + mg.setMaxLocals(); addMethod(mg.getMethod()); } diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/CodeExceptionGen.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/CodeExceptionGen.java index b3bb16450..62c02ea49 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/CodeExceptionGen.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/CodeExceptionGen.java @@ -54,9 +54,7 @@ package org.aspectj.apache.bcel.generic; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.CodeException; -import org.aspectj.apache.bcel.classfile.tests.*; /** * This class represents an exception handler, i.e., specifies the region where @@ -67,7 +65,7 @@ import org.aspectj.apache.bcel.classfile.tests.*; * The end of the region is automatically mapped to be exclusive when calling * getCodeException(), i.e., there is no difference semantically. * - * @version $Id: CodeExceptionGen.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: CodeExceptionGen.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * @see MethodGen * @see CodeException diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPoolGen.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPoolGen.java index ca2632ba0..686f54e25 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPoolGen.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPoolGen.java @@ -54,6 +54,8 @@ package org.aspectj.apache.bcel.generic; * <http://www.apache.org/>. */ +import java.util.HashMap; + import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.Constant; import org.aspectj.apache.bcel.classfile.ConstantCP; @@ -69,9 +71,6 @@ import org.aspectj.apache.bcel.classfile.ConstantNameAndType; import org.aspectj.apache.bcel.classfile.ConstantPool; import org.aspectj.apache.bcel.classfile.ConstantString; import org.aspectj.apache.bcel.classfile.ConstantUtf8; -import org.aspectj.apache.bcel.classfile.tests.*; - -import java.util.HashMap; /** * This class is used to build up a constant pool. The user adds @@ -83,7 +82,7 @@ import java.util.HashMap; * Constants.MAX_SHORT entries. Note that the first (0) is used by the * JVM and that Double and Long constants need two slots. * - * @version $Id: ConstantPoolGen.java,v 1.2 2004/11/19 16:45:18 aclement Exp $ + * @version $Id: ConstantPoolGen.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * @see Constant */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGen.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGen.java index 6e2c5b9be..af579c4ff 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGen.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGen.java @@ -54,6 +54,10 @@ package org.aspectj.apache.bcel.generic; * <http://www.apache.org/>. */ +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.Attribute; import org.aspectj.apache.bcel.classfile.Constant; @@ -64,19 +68,14 @@ import org.aspectj.apache.bcel.classfile.Field; import org.aspectj.apache.bcel.classfile.Utility; import org.aspectj.apache.bcel.classfile.annotation.Annotation; import org.aspectj.apache.bcel.classfile.annotation.RuntimeAnnotations; -import org.aspectj.apache.bcel.classfile.tests.*; import org.aspectj.apache.bcel.generic.annotation.AnnotationGen; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - /** * Template class for building up a field. The only extraordinary thing * one can do is to add a constant value attribute to a field (which must of * course be compatible with to the declared type). * - * @version $Id: FieldGen.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: FieldGen.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * @see Field */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGenOrMethodGen.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGenOrMethodGen.java index f1b80630e..12c995991 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGenOrMethodGen.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGenOrMethodGen.java @@ -1,5 +1,4 @@ package org.aspectj.apache.bcel.generic; -import org.aspectj.apache.bcel.Constants; /* ==================================================================== * The Apache Software License, Version 1.1 @@ -55,18 +54,18 @@ import org.aspectj.apache.bcel.Constants; * <http://www.apache.org/>. */ +import java.util.ArrayList; + +import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.AccessFlags; import org.aspectj.apache.bcel.classfile.Attribute; -import org.aspectj.apache.bcel.classfile.tests.*; import org.aspectj.apache.bcel.generic.annotation.AnnotationGen; -import java.util.ArrayList; - /** * Super class for FieldGen and MethodGen objects, since they have * some methods in common! * - * @version $Id: FieldGenOrMethodGen.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: FieldGenOrMethodGen.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public abstract class FieldGenOrMethodGen extends AccessFlags diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldInstruction.java index 13058a959..bd039eded 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldInstruction.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldInstruction.java @@ -55,15 +55,11 @@ package org.aspectj.apache.bcel.generic; */ import org.aspectj.apache.bcel.classfile.ConstantPool; -import org.aspectj.apache.bcel.classfile.ConstantUtf8; -import org.aspectj.apache.bcel.classfile.ConstantNameAndType; -import org.aspectj.apache.bcel.classfile.ConstantCP; -import org.aspectj.apache.bcel.classfile.tests.*; /** * Super class for the GET/PUTxxx family of instructions. * - * @version $Id: FieldInstruction.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: FieldInstruction.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public abstract class FieldInstruction extends FieldOrMethod diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldOrMethod.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldOrMethod.java index 893f31d01..55e1195c9 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldOrMethod.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldOrMethod.java @@ -57,13 +57,12 @@ import org.aspectj.apache.bcel.classfile.ConstantCP; import org.aspectj.apache.bcel.classfile.ConstantNameAndType; import org.aspectj.apache.bcel.classfile.ConstantPool; import org.aspectj.apache.bcel.classfile.ConstantUtf8; -import org.aspectj.apache.bcel.classfile.tests.*; /** * Super class for InvokeInstruction and FieldInstruction, since they have * some methods in common! * - * @version $Id: FieldOrMethod.java,v 1.2 2004/11/19 16:45:18 aclement Exp $ + * @version $Id: FieldOrMethod.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public abstract class FieldOrMethod extends CPInstruction implements LoadClass { diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/Instruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/Instruction.java index 5fddcf7dc..69de15199 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/Instruction.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/Instruction.java @@ -54,16 +54,18 @@ package org.aspectj.apache.bcel.generic; * <http://www.apache.org/>. */ +import java.io.DataOutputStream; +import java.io.IOException; +import java.io.Serializable; + import org.aspectj.apache.bcel.Constants; -import org.aspectj.apache.bcel.classfile.Utility; import org.aspectj.apache.bcel.classfile.ConstantPool; -import java.io.*; import org.aspectj.apache.bcel.util.ByteSequence; /** * Abstract super class for all Java byte codes. * - * @version $Id: Instruction.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: Instruction.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public abstract class Instruction implements Cloneable, Serializable { diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/InvokeInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/InvokeInstruction.java index f6a8da275..cf080da8f 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/InvokeInstruction.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/InvokeInstruction.java @@ -53,17 +53,16 @@ package org.aspectj.apache.bcel.generic; * information on the Apache Software Foundation, please see * <http://www.apache.org/>. */ +import java.util.StringTokenizer; + import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.Constant; import org.aspectj.apache.bcel.classfile.ConstantPool; -import org.aspectj.apache.bcel.classfile.tests.*; - -import java.util.StringTokenizer; /** * Super class for the INVOKExxx family of instructions. * - * @version $Id: InvokeInstruction.java,v 1.2 2004/11/19 16:45:18 aclement Exp $ + * @version $Id: InvokeInstruction.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public abstract class InvokeInstruction extends FieldOrMethod diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LineNumberGen.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LineNumberGen.java index a5813513d..7504ecce4 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LineNumberGen.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LineNumberGen.java @@ -54,15 +54,13 @@ package org.aspectj.apache.bcel.generic; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.LineNumber; -import org.aspectj.apache.bcel.classfile.tests.*; /** * This class represents a line number within a method, i.e., give an instruction * a line number corresponding to the source code line. * - * @version $Id: LineNumberGen.java,v 1.3 2004/11/19 16:45:18 aclement Exp $ + * @version $Id: LineNumberGen.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * @see LineNumber * @see MethodGen diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableGen.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableGen.java index 53916ea8e..7791e6662 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableGen.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableGen.java @@ -56,7 +56,6 @@ package org.aspectj.apache.bcel.generic; import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.LocalVariable; -import org.aspectj.apache.bcel.classfile.tests.*; /** * This class represents a local variable within a method. It contains its @@ -64,7 +63,7 @@ import org.aspectj.apache.bcel.classfile.tests.*; * with getLocalVariable which needs the instruction list and the constant * pool as parameters. * - * @version $Id: LocalVariableGen.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: LocalVariableGen.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * @see LocalVariable * @see MethodGen diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableInstruction.java index 904ed68ab..827eb45f1 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableInstruction.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableInstruction.java @@ -53,15 +53,16 @@ package org.aspectj.apache.bcel.generic; * information on the Apache Software Foundation, please see * <http://www.apache.org/>. */ -import java.io.*; -import org.aspectj.apache.bcel.util.ByteSequence; -import org.aspectj.apache.bcel.classfile.Utility; +import java.io.DataOutputStream; +import java.io.IOException; + import org.aspectj.apache.bcel.Constants; +import org.aspectj.apache.bcel.util.ByteSequence; /** * Abstract super class for instructions dealing with local variables. * - * @version $Id: LocalVariableInstruction.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: LocalVariableInstruction.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public abstract class LocalVariableInstruction extends Instruction diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/NEW.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/NEW.java index 0b0701b80..d9798050c 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/NEW.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/NEW.java @@ -53,14 +53,13 @@ package org.aspectj.apache.bcel.generic; * information on the Apache Software Foundation, please see * <http://www.apache.org/>. */ -import java.io.*; import org.aspectj.apache.bcel.ExceptionConstants; /** * NEW - Create new object * <PRE>Stack: ... -> ..., objectref</PRE> * - * @version $Id: NEW.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: NEW.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public class NEW extends CPInstruction diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/PUSH.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/PUSH.java index d76650f44..ce5300fbe 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/PUSH.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/PUSH.java @@ -54,13 +54,12 @@ package org.aspectj.apache.bcel.generic; * <http://www.apache.org/>. */ import org.aspectj.apache.bcel.Constants; -import java.io.*; /** * Wrapper class for push operations, which are implemented either as BIPUSH, * LDC or xCONST_n instructions. * - * @version $Id: PUSH.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: PUSH.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public final class PUSH diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java index 704fb6c72..60a5fa2ad 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java @@ -54,18 +54,17 @@ package org.aspectj.apache.bcel.generic; * <http://www.apache.org/>. */ +import java.util.ArrayList; + import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.ClassFormatException; import org.aspectj.apache.bcel.classfile.Utility; -import org.aspectj.apache.bcel.classfile.tests.*; - -import java.util.ArrayList; /** * Abstract super class for all possible java types, namely basic types * such as int, object types like String and array types, e.g. int[] * - * @version $Id: Type.java,v 1.2 2004/11/19 16:45:18 aclement Exp $ + * @version $Id: Type.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public abstract class Type implements java.io.Serializable { diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/AttributeHTML.java b/bcel-builder/src/org/aspectj/apache/bcel/util/AttributeHTML.java index 6363d6abd..6ff7dc6ae 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/util/AttributeHTML.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/util/AttributeHTML.java @@ -54,6 +54,10 @@ package org.aspectj.apache.bcel.util; * <http://www.apache.org/>. */ +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.PrintWriter; + import org.aspectj.apache.bcel.classfile.Attribute; import org.aspectj.apache.bcel.classfile.Code; import org.aspectj.apache.bcel.classfile.CodeException; @@ -69,14 +73,11 @@ import org.aspectj.apache.bcel.classfile.LocalVariable; import org.aspectj.apache.bcel.classfile.LocalVariableTable; import org.aspectj.apache.bcel.classfile.SourceFile; import org.aspectj.apache.bcel.classfile.Utility; -import org.aspectj.apache.bcel.classfile.tests.*; - -import java.io.*; /** * Convert found attributes into HTML file. * - * @version $Id: AttributeHTML.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: AttributeHTML.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/BCELifier.java b/bcel-builder/src/org/aspectj/apache/bcel/util/BCELifier.java index fd21bf30f..0c2c37013 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/util/BCELifier.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/util/BCELifier.java @@ -53,17 +53,21 @@ package org.aspectj.apache.bcel.util; * information on the Apache Software Foundation, please see * <http://www.apache.org/>. */ +import java.io.OutputStream; +import java.io.PrintWriter; + +import org.aspectj.apache.bcel.Constants; +import org.aspectj.apache.bcel.Repository; import org.aspectj.apache.bcel.classfile.ClassParser; import org.aspectj.apache.bcel.classfile.ConstantValue; import org.aspectj.apache.bcel.classfile.Field; import org.aspectj.apache.bcel.classfile.JavaClass; import org.aspectj.apache.bcel.classfile.Method; import org.aspectj.apache.bcel.classfile.Utility; -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.generic.*; -import org.aspectj.apache.bcel.Repository; -import org.aspectj.apache.bcel.Constants; -import java.io.*; +import org.aspectj.apache.bcel.generic.ArrayType; +import org.aspectj.apache.bcel.generic.ConstantPoolGen; +import org.aspectj.apache.bcel.generic.MethodGen; +import org.aspectj.apache.bcel.generic.Type; /** * This class takes a given JavaClass object and converts it to a @@ -72,7 +76,7 @@ import java.io.*; * are done with BCEL. It does not cover all features of BCEL, * but tries to mimic hand-written code as close as possible. * - * @version $Id: BCELifier.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: BCELifier.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public class BCELifier extends org.aspectj.apache.bcel.classfile.EmptyVisitor { diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/Class2HTML.java b/bcel-builder/src/org/aspectj/apache/bcel/util/Class2HTML.java index e09b30e77..79e0135ef 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/util/Class2HTML.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/util/Class2HTML.java @@ -54,17 +54,18 @@ package org.aspectj.apache.bcel.util; * <http://www.apache.org/>. */ -import java.io.*; -import java.util.BitSet; +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.PrintWriter; +import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.Attribute; import org.aspectj.apache.bcel.classfile.ClassParser; import org.aspectj.apache.bcel.classfile.ConstantPool; import org.aspectj.apache.bcel.classfile.JavaClass; import org.aspectj.apache.bcel.classfile.Method; import org.aspectj.apache.bcel.classfile.Utility; -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.Constants; /** * Read class file(s) and convert them into HTML files. @@ -85,7 +86,7 @@ import org.aspectj.apache.bcel.Constants; * method in the Method's frame will jump to the appropiate method in * the Code frame. * - * @version $Id: Class2HTML.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: Class2HTML.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> */ public class Class2HTML implements Constants diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoader.java b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoader.java index 7641fa78b..52012f9ea 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoader.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoader.java @@ -54,16 +54,16 @@ package org.aspectj.apache.bcel.util; * <http://www.apache.org/>. */ +import java.io.ByteArrayInputStream; import java.util.Hashtable; -import java.io.*; -import org.aspectj.apache.bcel.*; + +import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.classfile.ClassParser; import org.aspectj.apache.bcel.classfile.ConstantClass; import org.aspectj.apache.bcel.classfile.ConstantPool; import org.aspectj.apache.bcel.classfile.ConstantUtf8; import org.aspectj.apache.bcel.classfile.JavaClass; import org.aspectj.apache.bcel.classfile.Utility; -import org.aspectj.apache.bcel.classfile.tests.*; /** * <p>Drop in replacement for the standard class loader of the JVM. You can use it @@ -83,7 +83,7 @@ import org.aspectj.apache.bcel.classfile.tests.*; * where to use the system class loader in the constructor. The default value contains * "java.", "sun.", "javax."</p> * - * @version $Id: ClassLoader.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: ClassLoader.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * @see JavaWrapper * @see ClassPath diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoaderRepository.java b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoaderRepository.java index 5928fbd79..6a3e4b028 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoaderRepository.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoaderRepository.java @@ -54,14 +54,12 @@ package org.aspectj.apache.bcel.util; * <http://www.apache.org/>. */ -import java.io.*; - -import java.util.Map; +import java.io.IOException; +import java.io.InputStream; import java.util.HashMap; import org.aspectj.apache.bcel.classfile.ClassParser; import org.aspectj.apache.bcel.classfile.JavaClass; -import org.aspectj.apache.bcel.classfile.tests.*; /** * The repository maintains information about which classes have @@ -72,7 +70,7 @@ import org.aspectj.apache.bcel.classfile.tests.*; * * @see org.aspectj.apache.bcel.Repository * - * @version $Id: ClassLoaderRepository.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: ClassLoaderRepository.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * @author David Dixon-Peugh */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/CodeHTML.java b/bcel-builder/src/org/aspectj/apache/bcel/util/CodeHTML.java index ddc9d5de6..90662218d 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/util/CodeHTML.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/util/CodeHTML.java @@ -54,6 +54,11 @@ package org.aspectj.apache.bcel.util; * <http://www.apache.org/>. */ +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.PrintWriter; +import java.util.BitSet; + import org.aspectj.apache.bcel.classfile.Attribute; import org.aspectj.apache.bcel.classfile.Code; import org.aspectj.apache.bcel.classfile.CodeException; @@ -66,15 +71,11 @@ import org.aspectj.apache.bcel.classfile.LocalVariable; import org.aspectj.apache.bcel.classfile.LocalVariableTable; import org.aspectj.apache.bcel.classfile.Method; import org.aspectj.apache.bcel.classfile.Utility; -import org.aspectj.apache.bcel.classfile.tests.*; - -import java.io.*; -import java.util.BitSet; /** * Convert code into HTML file. * - * @version $Id: CodeHTML.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: CodeHTML.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/ConstantHTML.java b/bcel-builder/src/org/aspectj/apache/bcel/util/ConstantHTML.java index 6734d4d6f..0175c7af6 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/util/ConstantHTML.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ConstantHTML.java @@ -55,6 +55,10 @@ package org.aspectj.apache.bcel.util; * <http://www.apache.org/>. */ +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.PrintWriter; + import org.aspectj.apache.bcel.classfile.Constant; import org.aspectj.apache.bcel.classfile.ConstantClass; import org.aspectj.apache.bcel.classfile.ConstantFieldref; @@ -65,14 +69,11 @@ import org.aspectj.apache.bcel.classfile.ConstantPool; import org.aspectj.apache.bcel.classfile.ConstantString; import org.aspectj.apache.bcel.classfile.Method; import org.aspectj.apache.bcel.classfile.Utility; -import org.aspectj.apache.bcel.classfile.tests.*; - -import java.io.*; /** * Convert constant pool into HTML file. * - * @version $Id: ConstantHTML.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: ConstantHTML.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/MethodHTML.java b/bcel-builder/src/org/aspectj/apache/bcel/util/MethodHTML.java index 3f27cd1a8..c3b5f924f 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/util/MethodHTML.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/util/MethodHTML.java @@ -54,6 +54,10 @@ package org.aspectj.apache.bcel.util; * <http://www.apache.org/>. */ +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.PrintWriter; + import org.aspectj.apache.bcel.classfile.Attribute; import org.aspectj.apache.bcel.classfile.Code; import org.aspectj.apache.bcel.classfile.ConstantValue; @@ -61,14 +65,11 @@ import org.aspectj.apache.bcel.classfile.ExceptionTable; import org.aspectj.apache.bcel.classfile.Field; import org.aspectj.apache.bcel.classfile.Method; import org.aspectj.apache.bcel.classfile.Utility; -import org.aspectj.apache.bcel.classfile.tests.*; - -import java.io.*; /** * Convert methods and fields into HTML file. * - * @version $Id: MethodHTML.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: MethodHTML.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/SyntheticRepository.java b/bcel-builder/src/org/aspectj/apache/bcel/util/SyntheticRepository.java index 9f0e098c4..4ae3be794 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/util/SyntheticRepository.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/util/SyntheticRepository.java @@ -54,14 +54,12 @@ package org.aspectj.apache.bcel.util; * <http://www.apache.org/>. */ -import java.io.*; - -import java.util.Map; +import java.io.IOException; +import java.io.InputStream; import java.util.HashMap; import org.aspectj.apache.bcel.classfile.ClassParser; import org.aspectj.apache.bcel.classfile.JavaClass; -import org.aspectj.apache.bcel.classfile.tests.*; /** * This repository is used in situations where a Class is created @@ -80,7 +78,7 @@ import org.aspectj.apache.bcel.classfile.tests.*; * * @see org.aspectj.apache.bcel.Repository * - * @version $Id: SyntheticRepository.java,v 1.4 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: SyntheticRepository.java,v 1.5 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A> * @author David Dixon-Peugh */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/GraphicalVerifier.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/GraphicalVerifier.java index 602399046..876357ed4 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/GraphicalVerifier.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/GraphicalVerifier.java @@ -54,16 +54,18 @@ package org.aspectj.apache.bcel.verifier; * <http://www.apache.org/>. */ +import java.awt.Dimension; +import java.awt.Toolkit; + import javax.swing.UIManager; -import java.awt.*; -import org.aspectj.apache.bcel.verifier.*; -import org.aspectj.apache.bcel.generic.*; + +import org.aspectj.apache.bcel.generic.Type; /** * A graphical user interface application demonstrating JustIce. * - * @version $Id: GraphicalVerifier.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: GraphicalVerifier.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author Enver Haase */ public class GraphicalVerifier { diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/TransitiveHull.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/TransitiveHull.java index 6cc1954fc..142e7fa9f 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/TransitiveHull.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/TransitiveHull.java @@ -54,10 +54,8 @@ package org.aspectj.apache.bcel.verifier; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.verifier.*; +import org.aspectj.apache.bcel.Repository; import org.aspectj.apache.bcel.classfile.JavaClass; -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.*; /** * This class has a main method implementing a demonstration program @@ -65,7 +63,7 @@ import org.aspectj.apache.bcel.*; * all class files encountered; this may take up a lot of time and, * more notably, memory. * - * @version $Id: TransitiveHull.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: TransitiveHull.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> */ public class TransitiveHull implements VerifierFactoryObserver{ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/Verifier.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/Verifier.java index 0827266f6..aa7bb1b3d 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/Verifier.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/Verifier.java @@ -54,15 +54,16 @@ package org.aspectj.apache.bcel.verifier; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.*; -import org.aspectj.apache.bcel.classfile.JavaClass; -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.verifier.statics.*; -import org.aspectj.apache.bcel.verifier.structurals.*; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; +import org.aspectj.apache.bcel.classfile.JavaClass; +import org.aspectj.apache.bcel.verifier.statics.Pass1Verifier; +import org.aspectj.apache.bcel.verifier.statics.Pass2Verifier; +import org.aspectj.apache.bcel.verifier.statics.Pass3aVerifier; +import org.aspectj.apache.bcel.verifier.structurals.Pass3bVerifier; + /** * A Verifier instance is there to verify a class file according to The Java Virtual * Machine Specification, 2nd Edition. @@ -74,7 +75,7 @@ import java.util.Iterator; * A Verifier creates PassVerifier instances to perform the actual verification. * Verifier instances are usually generated by the VerifierFactory. * - * @version $Id: Verifier.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: Verifier.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> * @see org.aspectj.apache.bcel.verifier.VerifierFactory * @see org.aspectj.apache.bcel.verifier.PassVerifier diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierAppFrame.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierAppFrame.java index b602f09dd..b59b455dc 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierAppFrame.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierAppFrame.java @@ -54,20 +54,36 @@ package org.aspectj.apache.bcel.verifier; * <http://www.apache.org/>. */ -import java.awt.*; -import java.awt.event.*; -import javax.swing.*; -import javax.swing.event.*; -import org.aspectj.apache.bcel.*; +import java.awt.AWTEvent; +import java.awt.CardLayout; +import java.awt.Color; +import java.awt.Dimension; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.WindowEvent; + +import javax.swing.BorderFactory; +import javax.swing.JFrame; +import javax.swing.JList; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JSplitPane; +import javax.swing.JTextPane; +import javax.swing.ListSelectionModel; +import javax.swing.event.ListSelectionEvent; + +import org.aspectj.apache.bcel.Repository; import org.aspectj.apache.bcel.classfile.JavaClass; -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.verifier.*; /** * This class implements a machine-generated frame for use with * the GraphicalVerfifier. * - * @version $Id: VerifierAppFrame.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: VerifierAppFrame.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author Enver Haase * @see GraphicalVerifier */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryListModel.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryListModel.java index b41304351..656f5ffe2 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryListModel.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryListModel.java @@ -53,13 +53,12 @@ package org.aspectj.apache.bcel.verifier; * information on the Apache Software Foundation, please see * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.verifier.*; -import javax.swing.event.*; +import javax.swing.event.ListDataEvent; /** * This class implements an adapter; it implements both a Swing ListModel and * a VerifierFactoryObserver. * - * @version $Id: VerifierFactoryListModel.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: VerifierFactoryListModel.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author Enver Haase */ public class VerifierFactoryListModel implements org.aspectj.apache.bcel.verifier.VerifierFactoryObserver, javax.swing.ListModel{ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifyDialog.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifyDialog.java index f4ba545c9..cb3dbc9ce 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifyDialog.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifyDialog.java @@ -54,12 +54,11 @@ package org.aspectj.apache.bcel.verifier; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.*; -import org.aspectj.apache.bcel.classfile.JavaClass; -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.verifier.*; import java.awt.Color; +import org.aspectj.apache.bcel.Repository; +import org.aspectj.apache.bcel.classfile.JavaClass; + /** * A class for simple graphical class file verification. * Use the main(String []) method with fully qualified @@ -69,7 +68,7 @@ import java.awt.Color; * class in your application. * [This class was created using VisualAge for Java, * but it does not work under VAJ itself (Version 3.02 JDK 1.2)] - * @version $Id: VerifyDialog.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: VerifyDialog.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> * @see #main(String[]) * @see #VerifyDialog(String) diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass1Verifier.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass1Verifier.java index 3b30210ce..4583afc8c 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass1Verifier.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass1Verifier.java @@ -54,11 +54,12 @@ package org.aspectj.apache.bcel.verifier.statics; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.classfile.JavaClass; -import org.aspectj.apache.bcel.classfile.tests.*; import org.aspectj.apache.bcel.Repository; -import org.aspectj.apache.bcel.verifier.*; -import org.aspectj.apache.bcel.verifier.exc.*; +import org.aspectj.apache.bcel.classfile.JavaClass; +import org.aspectj.apache.bcel.verifier.PassVerifier; +import org.aspectj.apache.bcel.verifier.VerificationResult; +import org.aspectj.apache.bcel.verifier.Verifier; +import org.aspectj.apache.bcel.verifier.exc.LoadingException; import org.aspectj.apache.bcel.verifier.exc.Utility; /** @@ -67,7 +68,7 @@ import org.aspectj.apache.bcel.verifier.exc.Utility; * More detailed information is to be found at the do_verify() method's * documentation. * - * @version $Id: Pass1Verifier.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: Pass1Verifier.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> * @see #do_verify() */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass2Verifier.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass2Verifier.java index 62bef2e02..1d2995f73 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass2Verifier.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass2Verifier.java @@ -54,6 +54,9 @@ package org.aspectj.apache.bcel.verifier.statics; * <http://www.apache.org/>. */ +import java.util.HashMap; +import java.util.HashSet; + import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.Repository; import org.aspectj.apache.bcel.classfile.Attribute; @@ -74,8 +77,8 @@ import org.aspectj.apache.bcel.classfile.ConstantString; import org.aspectj.apache.bcel.classfile.ConstantUtf8; import org.aspectj.apache.bcel.classfile.ConstantValue; import org.aspectj.apache.bcel.classfile.Deprecated; -import org.aspectj.apache.bcel.classfile.DescendingVisitor; // Use _this_ one! -import org.aspectj.apache.bcel.classfile.EmptyVisitor; // Use _this_ one! +import org.aspectj.apache.bcel.classfile.DescendingVisitor; +import org.aspectj.apache.bcel.classfile.EmptyVisitor; import org.aspectj.apache.bcel.classfile.ExceptionTable; import org.aspectj.apache.bcel.classfile.Field; import org.aspectj.apache.bcel.classfile.InnerClass; @@ -90,13 +93,17 @@ import org.aspectj.apache.bcel.classfile.Node; import org.aspectj.apache.bcel.classfile.SourceFile; import org.aspectj.apache.bcel.classfile.Synthetic; import org.aspectj.apache.bcel.classfile.Unknown; -import org.aspectj.apache.bcel.classfile.Visitor; // Use _this_ one! -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.generic.*; -import org.aspectj.apache.bcel.verifier.*; -import org.aspectj.apache.bcel.verifier.exc.*; -import java.util.HashMap; -import java.util.HashSet; +import org.aspectj.apache.bcel.classfile.Visitor; +import org.aspectj.apache.bcel.generic.ArrayType; +import org.aspectj.apache.bcel.generic.ObjectType; +import org.aspectj.apache.bcel.generic.Type; +import org.aspectj.apache.bcel.verifier.PassVerifier; +import org.aspectj.apache.bcel.verifier.VerificationResult; +import org.aspectj.apache.bcel.verifier.Verifier; +import org.aspectj.apache.bcel.verifier.VerifierFactory; +import org.aspectj.apache.bcel.verifier.exc.AssertionViolatedException; +import org.aspectj.apache.bcel.verifier.exc.ClassConstraintException; +import org.aspectj.apache.bcel.verifier.exc.LocalVariableInfoInconsistentException; /** * This PassVerifier verifies a class file according to @@ -105,7 +112,7 @@ import java.util.HashSet; * More detailed information is to be found at the do_verify() * method's documentation. * - * @version $Id: Pass2Verifier.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: Pass2Verifier.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> * @see #do_verify() */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass3aVerifier.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass3aVerifier.java index 02658327a..37c50031b 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass3aVerifier.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass3aVerifier.java @@ -54,8 +54,8 @@ package org.aspectj.apache.bcel.verifier.statics; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.*; -import org.aspectj.apache.bcel.generic.*; +import org.aspectj.apache.bcel.Constants; +import org.aspectj.apache.bcel.Repository; import org.aspectj.apache.bcel.classfile.Attribute; import org.aspectj.apache.bcel.classfile.Code; import org.aspectj.apache.bcel.classfile.CodeException; @@ -78,9 +78,61 @@ import org.aspectj.apache.bcel.classfile.LineNumberTable; import org.aspectj.apache.bcel.classfile.LocalVariable; import org.aspectj.apache.bcel.classfile.LocalVariableTable; import org.aspectj.apache.bcel.classfile.Method; -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.verifier.*; -import org.aspectj.apache.bcel.verifier.exc.*; +import org.aspectj.apache.bcel.generic.ALOAD; +import org.aspectj.apache.bcel.generic.ANEWARRAY; +import org.aspectj.apache.bcel.generic.ASTORE; +import org.aspectj.apache.bcel.generic.ATHROW; +import org.aspectj.apache.bcel.generic.ArrayType; +import org.aspectj.apache.bcel.generic.BREAKPOINT; +import org.aspectj.apache.bcel.generic.CHECKCAST; +import org.aspectj.apache.bcel.generic.ConstantPoolGen; +import org.aspectj.apache.bcel.generic.DLOAD; +import org.aspectj.apache.bcel.generic.DSTORE; +import org.aspectj.apache.bcel.generic.FLOAD; +import org.aspectj.apache.bcel.generic.FSTORE; +import org.aspectj.apache.bcel.generic.FieldInstruction; +import org.aspectj.apache.bcel.generic.GETSTATIC; +import org.aspectj.apache.bcel.generic.GotoInstruction; +import org.aspectj.apache.bcel.generic.IINC; +import org.aspectj.apache.bcel.generic.ILOAD; +import org.aspectj.apache.bcel.generic.IMPDEP1; +import org.aspectj.apache.bcel.generic.IMPDEP2; +import org.aspectj.apache.bcel.generic.INSTANCEOF; +import org.aspectj.apache.bcel.generic.INVOKEINTERFACE; +import org.aspectj.apache.bcel.generic.INVOKESPECIAL; +import org.aspectj.apache.bcel.generic.INVOKESTATIC; +import org.aspectj.apache.bcel.generic.INVOKEVIRTUAL; +import org.aspectj.apache.bcel.generic.ISTORE; +import org.aspectj.apache.bcel.generic.Instruction; +import org.aspectj.apache.bcel.generic.InstructionHandle; +import org.aspectj.apache.bcel.generic.InstructionList; +import org.aspectj.apache.bcel.generic.InvokeInstruction; +import org.aspectj.apache.bcel.generic.JsrInstruction; +import org.aspectj.apache.bcel.generic.LDC; +import org.aspectj.apache.bcel.generic.LDC2_W; +import org.aspectj.apache.bcel.generic.LLOAD; +import org.aspectj.apache.bcel.generic.LOOKUPSWITCH; +import org.aspectj.apache.bcel.generic.LSTORE; +import org.aspectj.apache.bcel.generic.LoadClass; +import org.aspectj.apache.bcel.generic.MULTIANEWARRAY; +import org.aspectj.apache.bcel.generic.NEW; +import org.aspectj.apache.bcel.generic.NEWARRAY; +import org.aspectj.apache.bcel.generic.ObjectType; +import org.aspectj.apache.bcel.generic.PUTSTATIC; +import org.aspectj.apache.bcel.generic.RET; +import org.aspectj.apache.bcel.generic.ReturnInstruction; +import org.aspectj.apache.bcel.generic.TABLESWITCH; +import org.aspectj.apache.bcel.generic.Type; +import org.aspectj.apache.bcel.verifier.PassVerifier; +import org.aspectj.apache.bcel.verifier.VerificationResult; +import org.aspectj.apache.bcel.verifier.Verifier; +import org.aspectj.apache.bcel.verifier.VerifierFactory; +import org.aspectj.apache.bcel.verifier.exc.AssertionViolatedException; +import org.aspectj.apache.bcel.verifier.exc.ClassConstraintException; +import org.aspectj.apache.bcel.verifier.exc.InvalidMethodException; +import org.aspectj.apache.bcel.verifier.exc.StaticCodeConstraintException; +import org.aspectj.apache.bcel.verifier.exc.StaticCodeInstructionConstraintException; +import org.aspectj.apache.bcel.verifier.exc.StaticCodeInstructionOperandConstraintException; /** * This PassVerifier verifies a class file according to @@ -89,7 +141,7 @@ import org.aspectj.apache.bcel.verifier.exc.*; * More detailed information is to be found at the do_verify() * method's documentation. * - * @version $Id: Pass3aVerifier.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: Pass3aVerifier.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> * @see #do_verify() */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/StringRepresentation.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/StringRepresentation.java index 55c7b5cd6..4283923f0 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/StringRepresentation.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/StringRepresentation.java @@ -87,8 +87,7 @@ import org.aspectj.apache.bcel.classfile.StackMap; import org.aspectj.apache.bcel.classfile.Synthetic; import org.aspectj.apache.bcel.classfile.Unknown; import org.aspectj.apache.bcel.classfile.Visitor; -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.verifier.exc.*; +import org.aspectj.apache.bcel.verifier.exc.AssertionViolatedException; /** * BCEL's Node classes (those from the classfile API that <B>accept()</B> Visitor @@ -102,7 +101,7 @@ import org.aspectj.apache.bcel.verifier.exc.*; * Note that this class also serves as a placeholder for more sophisticated message * handling in future versions of JustIce. * - * @version $Id: StringRepresentation.java,v 1.2 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: StringRepresentation.java,v 1.3 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> */ public class StringRepresentation extends org.aspectj.apache.bcel.classfile.EmptyVisitor implements Visitor{ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ControlFlowGraph.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ControlFlowGraph.java index e8091342a..d64e6eb38 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ControlFlowGraph.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ControlFlowGraph.java @@ -54,15 +54,27 @@ package org.aspectj.apache.bcel.verifier.structurals; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.generic.*; -import org.aspectj.apache.bcel.verifier.VerifierFactory; -import org.aspectj.apache.bcel.verifier.exc.*; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Hashtable; + +import org.aspectj.apache.bcel.generic.ATHROW; +import org.aspectj.apache.bcel.generic.BranchInstruction; +import org.aspectj.apache.bcel.generic.GotoInstruction; +import org.aspectj.apache.bcel.generic.Instruction; +import org.aspectj.apache.bcel.generic.InstructionHandle; +import org.aspectj.apache.bcel.generic.JsrInstruction; +import org.aspectj.apache.bcel.generic.MethodGen; +import org.aspectj.apache.bcel.generic.RET; +import org.aspectj.apache.bcel.generic.ReturnInstruction; +import org.aspectj.apache.bcel.generic.Select; +import org.aspectj.apache.bcel.verifier.exc.AssertionViolatedException; +import org.aspectj.apache.bcel.verifier.exc.StructuralCodeConstraintException; /** * This class represents a control flow graph of a method. * - * @version $Id: ControlFlowGraph.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: ControlFlowGraph.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> */ public class ControlFlowGraph{ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExecutionVisitor.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExecutionVisitor.java index 30c2e013b..38a84ae5e 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExecutionVisitor.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExecutionVisitor.java @@ -55,19 +55,13 @@ package org.aspectj.apache.bcel.verifier.structurals; */ import org.aspectj.apache.bcel.Constants; -import org.aspectj.apache.bcel.Repository; -import org.aspectj.apache.bcel.generic.*; -import org.aspectj.apache.bcel.classfile.JavaClass; import org.aspectj.apache.bcel.classfile.Constant; import org.aspectj.apache.bcel.classfile.ConstantDouble; import org.aspectj.apache.bcel.classfile.ConstantFloat; import org.aspectj.apache.bcel.classfile.ConstantInteger; import org.aspectj.apache.bcel.classfile.ConstantLong; import org.aspectj.apache.bcel.classfile.ConstantString; -import org.aspectj.apache.bcel.verifier.Verifier; -import org.aspectj.apache.bcel.verifier.exc.*; -import java.util.ArrayList; -import java.util.Hashtable; +import org.aspectj.apache.bcel.generic.*; /** * This Visitor class may be used for a type-based Java Virtual Machine @@ -92,7 +86,7 @@ import java.util.Hashtable; * If a two-slot type is stored into a local variable, the next variable * is given the type Type.UNKNOWN. * - * @version $Id: ExecutionVisitor.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: ExecutionVisitor.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> * @see #visitDSTORE(DSTORE o) * @see InstConstraintVisitor diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Frame.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Frame.java index 95bf14dd8..781635b88 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Frame.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Frame.java @@ -54,15 +54,12 @@ package org.aspectj.apache.bcel.verifier.structurals; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.generic.*; -import org.aspectj.apache.bcel.verifier.exc.*; -import java.util.ArrayList; /** * This class represents a JVM execution frame; that means, * a local variable array and an operand stack. * - * @version $Id: Frame.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: Frame.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> */ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstructionContext.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstructionContext.java index ffe567dc9..c1aee86c9 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstructionContext.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstructionContext.java @@ -54,16 +54,16 @@ package org.aspectj.apache.bcel.verifier.structurals; * <http://www.apache.org/>. */ -import org.aspectj.apache.bcel.generic.InstructionHandle; import java.util.ArrayList; -import java.util.Iterator; + +import org.aspectj.apache.bcel.generic.InstructionHandle; /** * An InstructionContext offers convenient access * to information like control flow successors and * such. * - * @version $Id: InstructionContext.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: InstructionContext.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> */ public interface InstructionContext{ diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Pass3bVerifier.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Pass3bVerifier.java index 0388850f9..17b562c06 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Pass3bVerifier.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Pass3bVerifier.java @@ -54,19 +54,30 @@ package org.aspectj.apache.bcel.verifier.structurals; * <http://www.apache.org/>. */ -import java.io.*; +import java.io.PrintWriter; +import java.io.StringWriter; import java.util.ArrayList; import java.util.Random; import java.util.Vector; + import org.aspectj.apache.bcel.Constants; import org.aspectj.apache.bcel.Repository; import org.aspectj.apache.bcel.classfile.JavaClass; import org.aspectj.apache.bcel.classfile.Method; -import org.aspectj.apache.bcel.classfile.tests.*; -import org.aspectj.apache.bcel.generic.*; -import org.aspectj.apache.bcel.verifier.*; -import org.aspectj.apache.bcel.verifier.statics.*; -import org.aspectj.apache.bcel.verifier.exc.*; +import org.aspectj.apache.bcel.generic.ConstantPoolGen; +import org.aspectj.apache.bcel.generic.InstructionHandle; +import org.aspectj.apache.bcel.generic.JsrInstruction; +import org.aspectj.apache.bcel.generic.MethodGen; +import org.aspectj.apache.bcel.generic.ObjectType; +import org.aspectj.apache.bcel.generic.RET; +import org.aspectj.apache.bcel.generic.ReturnInstruction; +import org.aspectj.apache.bcel.generic.ReturnaddressType; +import org.aspectj.apache.bcel.generic.Type; +import org.aspectj.apache.bcel.verifier.PassVerifier; +import org.aspectj.apache.bcel.verifier.VerificationResult; +import org.aspectj.apache.bcel.verifier.Verifier; +import org.aspectj.apache.bcel.verifier.exc.AssertionViolatedException; +import org.aspectj.apache.bcel.verifier.exc.VerifierConstraintViolatedException; /** * This PassVerifier verifies a method of class file according to pass 3, @@ -75,7 +86,7 @@ import org.aspectj.apache.bcel.verifier.exc.*; * More detailed information is to be found at the do_verify() method's * documentation. * - * @version $Id: Pass3bVerifier.java,v 1.3 2004/11/19 16:45:19 aclement Exp $ + * @version $Id: Pass3bVerifier.java,v 1.4 2004/11/22 08:31:27 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A> * @see #do_verify() */ |