aboutsummaryrefslogtreecommitdiffstats
path: root/bcel-builder
diff options
context:
space:
mode:
authoraclement <aclement>2004-11-19 16:45:18 +0000
committeraclement <aclement>2004-11-19 16:45:18 +0000
commit1ad46c857bb676ff7237b9b6519b2db3563efb66 (patch)
tree5f22887b5c34b74f3a1220dd481f5530d643b85a /bcel-builder
parent8644e07c0dcee8a4e24b0bcdb320c9bfa47d9612 (diff)
downloadaspectj-1ad46c857bb676ff7237b9b6519b2db3563efb66.tar.gz
aspectj-1ad46c857bb676ff7237b9b6519b2db3563efb66.zip
BCEL Java5 Support
Diffstat (limited to 'bcel-builder')
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/Constants.java29
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/ExceptionConstants.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/Repository.java14
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/AccessFlags.java14
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Attribute.java30
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/AttributeReader.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassFormatException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassParser.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Code.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/CodeException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Constant.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantCP.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantClass.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantDouble.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantFieldref.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantFloat.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantInteger.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantInterfaceMethodref.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantLong.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantMethodref.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantNameAndType.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantObject.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantPool.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantString.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantUtf8.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantValue.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Deprecated.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/DescendingVisitor.java54
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/EmptyVisitor.java17
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/ExceptionTable.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Field.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/FieldOrMethod.java37
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClass.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClasses.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/JavaClass.java56
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumber.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumberTable.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariable.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariableTable.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Method.java61
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Node.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/PMGClass.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Signature.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/SourceFile.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMap.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapEntry.java7
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapType.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Synthetic.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Unknown.java4
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Utility.java198
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/Visitor.java16
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/classfile/package.html2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/AALOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/AASTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ACONST_NULL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ALOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ANEWARRAY.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ARETURN.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ARRAYLENGTH.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ASTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ATHROW.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/AllocationInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ArithmeticInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayType.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/BALOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/BASTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/BIPUSH.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/BREAKPOINT.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/BasicType.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/BranchHandle.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/BranchInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/CALOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/CASTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/CHECKCAST.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/CPInstruction.java10
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGen.java101
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGenException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ClassObserver.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/CodeExceptionGen.java4
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/CompoundInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPoolGen.java21
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPushInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ConversionInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/D2F.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/D2I.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/D2L.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DADD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DALOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DASTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPG.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DCONST.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DDIV.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DLOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DMUL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DNEG.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DREM.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DRETURN.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DSTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DSUB.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DUP.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X1.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X2.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X1.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X2.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/EmptyVisitor.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ExceptionThrower.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/F2D.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/F2I.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/F2L.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FADD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FALOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FASTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPG.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FCONST.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FDIV.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FLOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FMUL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FNEG.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FREM.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FRETURN.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FSTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FSUB.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGen.java46
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGenOrMethodGen.java18
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FieldInstruction.java6
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FieldObserver.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/FieldOrMethod.java8
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/GETFIELD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/GETSTATIC.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO_W.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/GotoInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/I2B.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/I2C.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/I2D.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/I2F.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/I2L.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/I2S.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IADD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IALOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IAND.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IASTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ICONST.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IDIV.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IFEQ.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IFGE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IFGT.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IFLE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IFLT.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IFNE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IFNONNULL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IFNULL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPEQ.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPNE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPEQ.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGT.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLT.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPNE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IINC.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ILOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP1.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP2.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IMUL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/INEG.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/INSTANCEOF.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEINTERFACE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESPECIAL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESTATIC.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEVIRTUAL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IOR.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IREM.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IRETURN.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ISHL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ISHR.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ISTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ISUB.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IUSHR.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IXOR.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IfInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/IndexedInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/Instruction.java8
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionComparator.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionConstants.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionFactory.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionHandle.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionList.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionListObserver.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionTargeter.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/InvokeInstruction.java7
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/JSR.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/JSR_W.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/JsrInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/L2D.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/L2F.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/L2I.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LADD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LALOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LAND.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LASTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LCMP.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LCONST.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LDC.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LDC2_W.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LDC_W.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LDIV.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LLOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LMUL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LNEG.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LOOKUPSWITCH.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LOR.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LREM.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LRETURN.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LSHL.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LSHR.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LSTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LSUB.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LUSHR.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LXOR.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LineNumberGen.java4
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LoadClass.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LoadInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableGen.java5
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableInstruction.java9
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/MONITORENTER.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/MONITOREXIT.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/MULTIANEWARRAY.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/MethodGen.java150
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/MethodObserver.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/NEW.java3
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/NEWARRAY.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/NOP.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/NamedAndTyped.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ObjectType.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/POP.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/POP2.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/PUSH.java3
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/PUTFIELD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/PUTSTATIC.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/PopInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/PushInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/RET.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/RETURN.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ReferenceType.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnaddressType.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/SALOAD.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/SASTORE.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/SIPUSH.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/SWAP.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/SWITCH.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/Select.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/StackConsumer.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/StackInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/StackProducer.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/StoreInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/TABLESWITCH.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/TargetLostException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java7
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/TypedInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/UnconditionalBranch.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/VariableLengthInstruction.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/Visitor.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/generic/package.html2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/package.html2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/AttributeHTML.java20
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/BCELFactory.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/BCELifier.java10
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/ByteSequence.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/Class2HTML.java11
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoader.java10
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoaderRepository.java8
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/ClassPath.java14
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/ClassQueue.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/ClassSet.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/ClassStack.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/ClassVector.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/CodeHTML.java17
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/ConstantHTML.java15
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/InstructionFinder.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/JavaWrapper.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/MethodHTML.java12
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/Repository.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/SyntheticRepository.java8
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/util/package.html2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/GraphicalVerifier.java10
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/NativeVerifier.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/PassVerifier.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/TransitiveHull.java6
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/VerificationResult.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/Verifier.java13
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierAppFrame.java32
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactory.java4
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryListModel.java5
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryObserver.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifyDialog.java9
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/AssertionViolatedException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/ClassConstraintException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/CodeConstraintException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/InvalidMethodException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LinkingConstraintException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LoadingException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LocalVariableInfoInconsistentException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeConstraintException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionConstraintException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionOperandConstraintException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StructuralCodeConstraintException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/Utility.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerificationException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerifierConstraintViolatedException.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/package.html2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/package.html2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/DOUBLE_Upper.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/IntList.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LONG_Upper.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariableInfo.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariablesInfo.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass1Verifier.java5
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass2Verifier.java36
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/Pass3aVerifier.java26
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/StringRepresentation.java37
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/package.html2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ControlFlowGraph.java22
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExceptionHandler.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExceptionHandlers.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExecutionVisitor.java14
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Frame.java5
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/GenericArray.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstConstraintVisitor.java4
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstructionContext.java6
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/LocalVariables.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/OperandStack.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Pass3bVerifier.java31
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutine.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutines.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/UninitializedObjectType.java2
-rw-r--r--bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/package.html2
342 files changed, 1393 insertions, 514 deletions
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/Constants.java b/bcel-builder/src/org/aspectj/apache/bcel/Constants.java
index 1bcf738a3..64500b7dc 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/Constants.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/Constants.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel;
/**
* Constants for the project, mostly defined in the JVM specification.
*
- * @version $Id: Constants.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: Constants.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface Constants {
@@ -96,6 +96,12 @@ public interface Constants {
public final static short ACC_INTERFACE = 0x0200;
public final static short ACC_ABSTRACT = 0x0400;
public final static short ACC_STRICT = 0x0800;
+
+ // J5SUPPORT:
+ public final static short ACC_ANNOTATION = 0x2000;
+ public final static short ACC_ENUM = 0x4000;
+ public final static short ACC_BRIDGE = 0x0040;
+ public final static short ACC_VARARGS = 0x0080;
// Applies to classes compiled by new compilers only
public final static short ACC_SUPER = 0x0020;
@@ -754,16 +760,29 @@ public interface Constants {
public static final byte ATTR_SYNTHETIC = 7;
public static final byte ATTR_DEPRECATED = 8;
public static final byte ATTR_PMG = 9;
- public static final byte ATTR_SIGNATURE = 10;
+ public static final byte ATTR_SIGNATURE = 10; //J5TODO: Is this the same as a Java5 signature attribute?
public static final byte ATTR_STACK_MAP = 11;
-
- public static final short KNOWN_ATTRIBUTES = 12;
+
+ // J5SUPPORT:
+ public static final byte ATTR_RUNTIME_VISIBLE_ANNOTATIONS = 12;
+ public static final byte ATTR_RUNTIME_INVISIBLE_ANNOTATIONS = 13;
+ public static final byte ATTR_RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS = 14;
+ public static final byte ATTR_RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS = 15;
+ public static final byte ATTR_LOCAL_VARIABLE_TYPE_TABLE = 16;
+ public static final byte ATTR_ENCLOSING_METHOD = 17;
+ public static final byte ATTR_ANNOTATION_DEFAULT = 18;
+
+ public static final short KNOWN_ATTRIBUTES = 19;
public static final String[] ATTRIBUTE_NAMES = {
"SourceFile", "ConstantValue", "Code", "Exceptions",
"LineNumberTable", "LocalVariableTable",
"InnerClasses", "Synthetic", "Deprecated",
- "PMGClass", "Signature", "StackMap"
+ "PMGClass", "Signature", "StackMap",
+ // J5SUPPORT:
+ "RuntimeVisibleAnnotations","RuntimeInvisibleAnnotations",
+ "RuntimeVisibleParameterAnnotations","RuntimeInvisibleParameterAnnotations",
+ "LocalVariableTypeTable","EnclosingMethod","AnnotationDefault"
};
/** Constants used in the StackMap attribute.
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/ExceptionConstants.java b/bcel-builder/src/org/aspectj/apache/bcel/ExceptionConstants.java
index d1c5e2485..27844e532 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/ExceptionConstants.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/ExceptionConstants.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel;
/**
* Exception constants.
*
- * @version $Id: ExceptionConstants.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ExceptionConstants.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase">E. Haase</A>
*/
public interface ExceptionConstants {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/Repository.java b/bcel-builder/src/org/aspectj/apache/bcel/Repository.java
index f4e54b1bf..658b57b98 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/Repository.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/Repository.java
@@ -66,18 +66,16 @@ import java.io.*;
* @see org.aspectj.apache.bcel.util.Repository
* @see org.aspectj.apache.bcel.util.SyntheticRepository
*
- * @version $Id: Repository.java,v 1.2 2004/11/18 16:00:19 aclement Exp $
+ * @version $Id: Repository.java,v 1.3 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class Repository {
- private static org.aspectj.apache.bcel.util.Repository _repository =
- null;
+ private static org.aspectj.apache.bcel.util.Repository _repository = null;
/** @return currently used repository instance
*/
public static org.aspectj.apache.bcel.util.Repository getRepository() {
- if (_repository == null) _repository = SyntheticRepository.getInstance();
-
+ if (_repository == null) _repository = SyntheticRepository.getInstance();
return _repository;
}
@@ -127,7 +125,7 @@ public abstract class Repository {
/** Clear the repository.
*/
public static void clearCache() {
- getRepository().clear();
+ getRepository().clear();
}
/**
@@ -145,14 +143,14 @@ public abstract class Repository {
* Remove class with given (fully qualified) name from repository.
*/
public static void removeClass(String clazz) {
- getRepository().removeClass(getRepository().findClass(clazz));
+ getRepository().removeClass(getRepository().findClass(clazz));
}
/**
* Remove given class from repository.
*/
public static void removeClass(JavaClass clazz) {
- getRepository().removeClass(clazz);
+ getRepository().removeClass(clazz);
}
/**
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/AccessFlags.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/AccessFlags.java
index dfdfaa0ee..cfcee2584 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/AccessFlags.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/AccessFlags.java
@@ -60,7 +60,7 @@ import org.aspectj.apache.bcel.Constants;
* Super class for all objects that have modifiers like private, final, ...
* I.e. classes, fields, and methods.
*
- * @version $Id: AccessFlags.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: AccessFlags.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class AccessFlags implements java.io.Serializable {
@@ -168,4 +168,16 @@ public abstract class AccessFlags implements java.io.Serializable {
public final boolean isStrictfp() {
return (access_flags & Constants.ACC_STRICT) != 0;
}
+
+ public final void isVarargs(boolean flag) { setFlag(Constants.ACC_VARARGS, flag); }
+ /** J5SUPPORT: Called on methods to determine if they were written with varargs. */
+ public final boolean isVarargs() {
+ return (access_flags & Constants.ACC_VARARGS) != 0;
+ }
+
+ public final void isBridge(boolean flag) { setFlag(Constants.ACC_BRIDGE, flag); }
+ /** J5SUPPORT: Called on methods to determine if they are bridge methods */
+ public final boolean isBridge() {
+ return (access_flags & Constants.ACC_BRIDGE) != 0;
+ }
}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Attribute.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Attribute.java
index ba0bec3b7..8d7deb62e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Attribute.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Attribute.java
@@ -55,6 +55,11 @@ package org.aspectj.apache.bcel.classfile;
*/
import org.aspectj.apache.bcel.Constants;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleParameterAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleParameterAnnotations;
+
import java.io.*;
import java.util.HashMap;
@@ -66,7 +71,7 @@ import java.util.HashMap;
* <em>Synthetic</em> attributes are supported. The
* <em>Unknown</em> attribute stands for non-standard-attributes.
*
- * @version $Id: Attribute.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Attribute.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see ConstantValue
* @see SourceFile
@@ -158,7 +163,7 @@ public abstract class Attribute implements Cloneable, Node, Serializable {
int length;
byte tag = Constants.ATTR_UNKNOWN; // Unknown attribute
- // Get class name from constant pool via `name_index' indirection
+ // Get class name from constant pool via 'name_index' indirection
name_index = (int)file.readUnsignedShort();
c = (ConstantUtf8)constant_pool.getConstant(name_index,
Constants.CONSTANT_Utf8);
@@ -221,11 +226,32 @@ public abstract class Attribute implements Cloneable, Node, Serializable {
case Constants.ATTR_STACK_MAP:
return new StackMap(name_index, length, file, constant_pool);
+ // J5SUPPORT:
+ case Constants.ATTR_RUNTIME_VISIBLE_ANNOTATIONS:
+ return new RuntimeVisibleAnnotations(name_index,length,file,constant_pool);
+ case Constants.ATTR_RUNTIME_INVISIBLE_ANNOTATIONS:
+ return new RuntimeInvisibleAnnotations(name_index,length,file,constant_pool);
+ case Constants.ATTR_RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS:
+ return new RuntimeVisibleParameterAnnotations(name_index,length,file,constant_pool);
+ case Constants.ATTR_RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS:
+ return new RuntimeInvisibleParameterAnnotations(name_index,length,file,constant_pool);
+ case Constants.ATTR_ANNOTATION_DEFAULT:
+ return new AnnotationDefault(name_index,length,file,constant_pool);
+ case Constants.ATTR_LOCAL_VARIABLE_TYPE_TABLE:
+ return new LocalVariableTypeTable(name_index,length,file,constant_pool);
+ case Constants.ATTR_ENCLOSING_METHOD:
+ return new EnclosingMethod(name_index,length,file,constant_pool);
+
default: // Never reached
throw new IllegalStateException("Ooops! default case reached.");
}
}
+ public String getName() {
+ ConstantUtf8 c =
+ (ConstantUtf8)constant_pool.getConstant(name_index,Constants.CONSTANT_Utf8);
+ return c.getBytes();
+ }
/**
* @return Length of attribute field in bytes.
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/AttributeReader.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/AttributeReader.java
index 3684b1db9..18c63eb05 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/AttributeReader.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/AttributeReader.java
@@ -60,7 +60,7 @@ package org.aspectj.apache.bcel.classfile;
* method. These factory objects should implement this interface.
* @see Attribute
- * @version $Id: AttributeReader.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: AttributeReader.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface AttributeReader {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassFormatException.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassFormatException.java
index 5f7820fef..8e374fc5b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassFormatException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassFormatException.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.classfile;
* that the file is malformed or otherwise cannot be interpreted as a
* class file.
*
- * @version $Id: ClassFormatException.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ClassFormatException.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ClassFormatException extends RuntimeException {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassParser.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassParser.java
index 03cb7d464..a8f6f122d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassParser.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ClassParser.java
@@ -70,7 +70,7 @@ import java.util.zip.*;
* JVM specification 1.0</a>. See this paper for
* further details about the structure of a bytecode file.
*
- * @version $Id: ClassParser.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ClassParser.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class ClassParser {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Code.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Code.java
index 0337f8435..7ace85a59 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Code.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Code.java
@@ -69,7 +69,7 @@ import java.io.*;
* is used for debugging purposes and <em>LocalVariableTable</em> which
* contains information about the local variables.
*
- * @version $Id: Code.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Code.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Attribute
* @see CodeException
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/CodeException.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/CodeException.java
index 5b6ef888a..b450186cb 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/CodeException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/CodeException.java
@@ -62,7 +62,7 @@ import java.io.*;
* attribute and is used only there. It contains a range in which a
* particular exception handler is active.
*
- * @version $Id: CodeException.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: CodeException.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Code
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Constant.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Constant.java
index ca55fa524..96ea2c603 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Constant.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Constant.java
@@ -62,7 +62,7 @@ import java.io.*;
* in the constant pool of a class file. The classes keep closely to
* the JVM specification.
*
- * @version $Id: Constant.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Constant.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class Constant implements Cloneable, Node, Serializable {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantCP.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantCP.java
index 21ada86ca..7ee7e32dc 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantCP.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantCP.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.Constants;
/**
* Abstract super class for Fieldref and Methodref constants.
*
- * @version $Id: ConstantCP.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantCP.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see ConstantFieldref
* @see ConstantMethodref
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantClass.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantClass.java
index a3c5af367..bd642e016 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantClass.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantClass.java
@@ -62,7 +62,7 @@ import java.io.*;
* <A HREF="org.aspectj.apache.bcel.classfile.Constant.html">Constant</A> class
* and represents a reference to a (external) class.
*
- * @version $Id: ConstantClass.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantClass.java,v 1.2 2004/11/19 16:45:18 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/classfile/ConstantDouble.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantDouble.java
index ddd5f00d2..ae7c63130 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantDouble.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantDouble.java
@@ -62,7 +62,7 @@ import java.io.*;
* <A HREF="org.aspectj.apache.bcel.classfile.Constant.html">Constant</A> class
* and represents a reference to a Double object.
*
- * @version $Id: ConstantDouble.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantDouble.java,v 1.2 2004/11/19 16:45:18 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/classfile/ConstantFieldref.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantFieldref.java
index ce6e652a7..42cc8886f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantFieldref.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantFieldref.java
@@ -60,7 +60,7 @@ import java.io.*;
/**
* This class represents a constant pool reference to a field.
*
- * @version $Id: ConstantFieldref.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantFieldref.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class ConstantFieldref extends ConstantCP {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantFloat.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantFloat.java
index 0642ebd05..3e97c4dec 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantFloat.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantFloat.java
@@ -62,7 +62,7 @@ import java.io.*;
* <A HREF="org.aspectj.apache.bcel.classfile.Constant.html">Constant</A> class
* and represents a reference to a float object.
*
- * @version $Id: ConstantFloat.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantFloat.java,v 1.2 2004/11/19 16:45:18 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/classfile/ConstantInteger.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantInteger.java
index cfb8debbe..ab6c44f72 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantInteger.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantInteger.java
@@ -64,7 +64,7 @@ import java.io.*;
* <A HREF="org.aspectj.apache.bcel.classfile.Constant.html">Constant</A> class
* and represents a reference to an int object.
*
- * @version $Id: ConstantInteger.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantInteger.java,v 1.2 2004/11/19 16:45:18 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/classfile/ConstantInterfaceMethodref.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantInterfaceMethodref.java
index ff933df7b..c072a0e24 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantInterfaceMethodref.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantInterfaceMethodref.java
@@ -60,7 +60,7 @@ import java.io.*;
/**
* This class represents a constant pool reference to an interface method.
*
- * @version $Id: ConstantInterfaceMethodref.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantInterfaceMethodref.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class ConstantInterfaceMethodref extends ConstantCP {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantLong.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantLong.java
index bd9683b50..4080e700f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantLong.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantLong.java
@@ -62,7 +62,7 @@ import java.io.*;
* <A HREF="org.aspectj.apache.bcel.classfile.Constant.html">Constant</A> class
* and represents a reference to a long object.
*
- * @version $Id: ConstantLong.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantLong.java,v 1.2 2004/11/19 16:45:18 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/classfile/ConstantMethodref.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantMethodref.java
index 5450f1692..c7a1ec61d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantMethodref.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantMethodref.java
@@ -60,7 +60,7 @@ import java.io.*;
/**
* This class represents a constant pool reference to a method.
*
- * @version $Id: ConstantMethodref.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantMethodref.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class ConstantMethodref extends ConstantCP {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantNameAndType.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantNameAndType.java
index 5e95e5592..f6fb51239 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantNameAndType.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantNameAndType.java
@@ -63,7 +63,7 @@ import java.io.*;
* and represents a reference to the name and signature
* of a field or method.
*
- * @version $Id: ConstantNameAndType.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantNameAndType.java,v 1.2 2004/11/19 16:45:18 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/classfile/ConstantObject.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantObject.java
index 316b01e2e..6052ec152 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantObject.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantObject.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.classfile;
* This interface denotes those constants that have a "natural" value,
* such as ConstantLong, ConstantString, etc..
*
- * @version $Id: ConstantObject.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantObject.java,v 1.2 2004/11/19 16:45:18 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/classfile/ConstantPool.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantPool.java
index 6f32c089a..147b66fd6 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantPool.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantPool.java
@@ -65,7 +65,7 @@ import java.io.*;
* programatically should see <a href="../generic/ConstantPoolGen.html">
* ConstantPoolGen</a>.
- * @version $Id: ConstantPool.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantPool.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @see Constant
* @see org.aspectj.apache.bcel.generic.ConstantPoolGen
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantString.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantString.java
index 7816f6b0b..8e8f51899 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantString.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantString.java
@@ -62,7 +62,7 @@ import java.io.*;
* <A HREF="org.aspectj.apache.bcel.classfile.Constant.html">Constant</A> class
* and represents a reference to a String object.
*
- * @version $Id: ConstantString.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantString.java,v 1.2 2004/11/19 16:45:18 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/classfile/ConstantUtf8.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantUtf8.java
index 2a76bbd84..fa7b1b2de 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantUtf8.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantUtf8.java
@@ -62,7 +62,7 @@ import java.io.*;
* <A HREF="org.aspectj.apache.bcel.classfile.Constant.html">Constant</A> class
* and represents a reference to a Utf8 encoded string.
*
- * @version $Id: ConstantUtf8.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantUtf8.java,v 1.2 2004/11/19 16:45:18 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/classfile/ConstantValue.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantValue.java
index 1dad172c5..386804824 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantValue.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ConstantValue.java
@@ -62,7 +62,7 @@ import java.io.*;
* value, i.e., a default value for initializing a class field.
* This class is instantiated by the <em>Attribute.readAttribute()</em> method.
*
- * @version $Id: ConstantValue.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantValue.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Attribute
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Deprecated.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Deprecated.java
index 988fc0cad..2c7c9ab50 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Deprecated.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Deprecated.java
@@ -62,7 +62,7 @@ import java.io.*;
* deprecated method.
* It is instantiated from the <em>Attribute.readAttribute()</em> method.
*
- * @version $Id: Deprecated.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Deprecated.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Attribute
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/DescendingVisitor.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/DescendingVisitor.java
index 3e1681d33..7d61dc2d1 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/DescendingVisitor.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/DescendingVisitor.java
@@ -55,13 +55,18 @@ package org.aspectj.apache.bcel.classfile;
*/
import java.util.Stack;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleParameterAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleParameterAnnotations;
+
/**
* Traverses a JavaClass with another Visitor object 'piggy-backed'
* that is applied to all components of a JavaClass object. I.e. this
* class supplies the traversal strategy, other classes can make use
* of it.
*
- * @version $Id: DescendingVisitor.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DescendingVisitor.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DescendingVisitor implements Visitor {
@@ -337,6 +342,53 @@ public class DescendingVisitor implements Visitor {
stack.pop();
}
+ // J5SUPPORT:
+ public void visitEnclosingMethod(EnclosingMethod attribute) {
+ stack.push(attribute);
+ attribute.accept(visitor);
+ stack.pop();
+ }
+
+ public void visitRuntimeVisibleAnnotations(RuntimeVisibleAnnotations attribute) {
+ stack.push(attribute);
+ attribute.accept(visitor);
+ stack.pop();
+ }
+
+ public void visitRuntimeInvisibleAnnotations(RuntimeInvisibleAnnotations attribute) {
+ stack.push(attribute);
+ attribute.accept(visitor);
+ stack.pop();
+ }
+
+ public void visitRuntimeVisibleParameterAnnotations(RuntimeVisibleParameterAnnotations attribute) {
+ stack.push(attribute);
+ attribute.accept(visitor);
+ stack.pop();
+ }
+
+ public void visitRuntimeInvisibleParameterAnnotations(RuntimeInvisibleParameterAnnotations attribute) {
+ stack.push(attribute);
+ attribute.accept(visitor);
+ stack.pop();
+ }
+
+ public void visitAnnotationDefault(AnnotationDefault attribute) {
+ stack.push(attribute);
+ attribute.accept(visitor);
+ stack.pop();
+ }
+
+ public void visitLocalVariableTypeTable(LocalVariableTypeTable table) {
+ stack.push(table);
+ table.accept(visitor);
+
+ LocalVariable[] vars = table.getLocalVariableTypeTable();
+ for(int i=0; i < vars.length; i++)
+ vars[i].accept(this);
+ stack.pop();
+ }
+
public void visitSourceFile(SourceFile attribute) {
stack.push(attribute);
attribute.accept(visitor);
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/EmptyVisitor.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/EmptyVisitor.java
index c269e9953..1113f0af5 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/EmptyVisitor.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/EmptyVisitor.java
@@ -54,6 +54,10 @@ package org.aspectj.apache.bcel.classfile;
* <http://www.apache.org/>.
*/
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleParameterAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleParameterAnnotations;
/**
* Visitor with empty method bodies, can be extended and used in conjunction with the
@@ -62,7 +66,7 @@ package org.aspectj.apache.bcel.classfile;
* By courtesy of David Spencer.
*
* @see DescendingVisitor
- * @version $Id: EmptyVisitor.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: EmptyVisitor.java,v 1.3 2004/11/19 16:45:18 aclement Exp $
*
*/
public class EmptyVisitor implements Visitor {
@@ -100,4 +104,15 @@ public class EmptyVisitor implements Visitor {
public void visitUnknown(Unknown obj) {}
public void visitStackMap(StackMap obj) {}
public void visitStackMapEntry(StackMapEntry obj) {}
+
+ // J5SUPPORT:
+ public void visitEnclosingMethod(EnclosingMethod obj) {}
+ public void visitRuntimeVisibleAnnotations(RuntimeVisibleAnnotations attribute) {}
+ public void visitRuntimeInvisibleAnnotations(RuntimeInvisibleAnnotations attribute) {}
+ public void visitRuntimeVisibleParameterAnnotations(RuntimeVisibleParameterAnnotations attribute) {}
+ public void visitRuntimeInvisibleParameterAnnotations(RuntimeInvisibleParameterAnnotations attribute) {}
+ public void visitAnnotationDefault(AnnotationDefault attribute) {}
+ public void visitLocalVariableTypeTable(LocalVariableTypeTable obj) {}
+
+
}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ExceptionTable.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ExceptionTable.java
index 5476c75ed..74577682a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/ExceptionTable.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/ExceptionTable.java
@@ -65,7 +65,7 @@ import java.io.*;
* attribute using the name <em>Exceptions</em> (which is inconsistent
* with the other classes).
*
- * @version $Id: ExceptionTable.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ExceptionTable.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Code
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Field.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Field.java
index 8dad5ef2c..77b267fed 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Field.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Field.java
@@ -61,7 +61,7 @@ import java.io.*;
* This class represents the field info structure, i.e., the representation
* for a variable in the class. See JVM specification for details.
*
- * @version $Id: Field.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Field.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class Field extends FieldOrMethod {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/FieldOrMethod.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/FieldOrMethod.java
index 5318d527f..647c2211a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/FieldOrMethod.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/FieldOrMethod.java
@@ -54,12 +54,17 @@ package org.aspectj.apache.bcel.classfile;
* <http://www.apache.org/>.
*/
import org.aspectj.apache.bcel.Constants;
+import org.aspectj.apache.bcel.classfile.annotation.Annotation;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeAnnotations;
+
import java.io.*;
+import java.util.ArrayList;
+import java.util.List;
/**
* Abstract super class for fields and methods.
*
- * @version $Id: FieldOrMethod.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: FieldOrMethod.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class FieldOrMethod extends AccessFlags implements Cloneable, Node {
@@ -67,7 +72,12 @@ public abstract class FieldOrMethod extends AccessFlags implements Cloneable, No
protected int signature_index; // Points to encoded signature
protected int attributes_count;// No. of attributes
protected Attribute[] attributes; // Collection of attributes
+ private Annotation[] annotations; // annotations defined on the field or method
protected ConstantPool constant_pool;
+
+
+ // Annotations are collected from certain attributes, don't do it more than necessary!
+ private boolean annotationsOutOfDate = true;
FieldOrMethod() {}
@@ -141,7 +151,7 @@ public abstract class FieldOrMethod extends AccessFlags implements Cloneable, No
/**
* @param attributes Collection of object attributes.
*/
- public final void setAttributes(Attribute[] attributes) {
+ public void setAttributes(Attribute[] attributes) {
this.attributes = attributes;
attributes_count = (attributes == null)? 0 : attributes.length;
}
@@ -220,4 +230,27 @@ public abstract class FieldOrMethod extends AccessFlags implements Cloneable, No
return c;
}
+
+ /**
+ * Ensure we have unpacked any attributes that contain annotations.
+ * We don't remove these annotation attributes from the attributes list, they
+ * remain there.
+ */
+ public Annotation[] getAnnotations() {
+ if (annotationsOutOfDate) {
+ // Find attributes that contain annotation data
+ Attribute[] attrs = getAttributes();
+ List accumulatedAnnotations = new ArrayList();
+ for (int i = 0; i < attrs.length; i++) {
+ Attribute attribute = attrs[i];
+ if (attribute instanceof RuntimeAnnotations) {
+ RuntimeAnnotations runtimeAnnotations = (RuntimeAnnotations)attribute;
+ accumulatedAnnotations.addAll(runtimeAnnotations.getAnnotations());
+ }
+ }
+ annotations = (Annotation[])accumulatedAnnotations.toArray(new Annotation[]{});
+ annotationsOutOfDate = false;
+ }
+ return annotations;
+ }
}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClass.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClass.java
index bc5705a79..cb57f71af 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClass.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClass.java
@@ -62,7 +62,7 @@ import java.io.*;
* indices of the inner and outer classes, the name and the attributes
* of the inner class.
*
- * @version $Id: InnerClass.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: InnerClass.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see InnerClasses
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClasses.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClasses.java
index 5038b619f..d51a9405c 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClasses.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/InnerClasses.java
@@ -63,7 +63,7 @@ import java.io.*;
* to the source file of this class.
* It is instantiated from the <em>Attribute.readAttribute()</em> method.
*
- * @version $Id: InnerClasses.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: InnerClasses.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Attribute
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/JavaClass.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/JavaClass.java
index 5aa423f2d..650767d9e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/JavaClass.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/JavaClass.java
@@ -58,9 +58,13 @@ import org.aspectj.apache.bcel.Constants;
import org.aspectj.apache.bcel.util.SyntheticRepository;
import org.aspectj.apache.bcel.util.ClassVector;
import org.aspectj.apache.bcel.util.ClassQueue;
+import org.aspectj.apache.bcel.classfile.annotation.Annotation;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeAnnotations;
import org.aspectj.apache.bcel.generic.Type;
import java.io.*;
+import java.util.ArrayList;
+import java.util.List;
import java.util.StringTokenizer;
/**
@@ -73,7 +77,7 @@ import java.util.StringTokenizer;
* class file. Those interested in programatically generating classes
* should see the <a href="../generic/ClassGen.html">ClassGen</a> class.
- * @version $Id: JavaClass.java,v 1.2 2004/11/18 16:00:19 aclement Exp $
+ * @version $Id: JavaClass.java,v 1.3 2004/11/19 16:45:18 aclement Exp $
* @see org.aspectj.apache.bcel.generic.ClassGen
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
@@ -92,6 +96,7 @@ public class JavaClass extends AccessFlags implements Cloneable, Node {
private Field[] fields; // Fields, i.e., variables of class
private Method[] methods; // methods defined in the class
private Attribute[] attributes; // attributes defined in the class
+ private Annotation[] annotations; // annotations defined on the class
private byte source = HEAP; // Generated in memory
public static final byte HEAP = 1;
@@ -101,12 +106,16 @@ public class JavaClass extends AccessFlags implements Cloneable, Node {
static boolean debug = false; // Debugging on/off
static char sep = '/'; // directory separator
+ // Annotations are collected from certain attributes, don't do it more than necessary!
+ private boolean annotationsOutOfDate = true;
+
/**
* In cases where we go ahead and create something,
* use the default SyntheticRepository, because we
* don't know any better.
*/
private transient org.aspectj.apache.bcel.util.Repository repository = null;
+
/**
* Constructor gets all contents as arguments.
@@ -159,6 +168,7 @@ public class JavaClass extends AccessFlags implements Cloneable, Node {
this.fields = fields;
this.methods = methods;
this.attributes = attributes;
+ annotationsOutOfDate = true;
this.source = source;
// Get source file name if available
@@ -352,6 +362,23 @@ public class JavaClass extends AccessFlags implements Cloneable, Node {
*/
public Attribute[] getAttributes() { return attributes; }
+ public Annotation[] getAnnotations() {
+ if (annotationsOutOfDate) {
+ // Find attributes that contain annotation data
+ Attribute[] attrs = getAttributes();
+ List accumulatedAnnotations = new ArrayList();
+ for (int i = 0; i < attrs.length; i++) {
+ Attribute attribute = attrs[i];
+ if (attribute instanceof RuntimeAnnotations) {
+ RuntimeAnnotations runtimeAnnotations = (RuntimeAnnotations)attribute;
+ accumulatedAnnotations.addAll(runtimeAnnotations.getAnnotations());
+ }
+ }
+ annotations = (Annotation[])accumulatedAnnotations.toArray(new Annotation[]{});
+ annotationsOutOfDate = false;
+ }
+ return annotations;
+ }
/**
* @return Class name.
*/
@@ -463,6 +490,7 @@ public class JavaClass extends AccessFlags implements Cloneable, Node {
*/
public void setAttributes(Attribute[] attributes) {
this.attributes = attributes;
+ annotationsOutOfDate = true;
}
/**
@@ -595,6 +623,12 @@ public class JavaClass extends AccessFlags implements Cloneable, Node {
for(int i=0; i < attributes.length; i++)
buf.append(indent(attributes[i]));
}
+
+ if (annotations!=null && annotations.length>0) {
+ buf.append("\nAnnotation(s):\n");
+ for (int i=0; i<annotations.length; i++)
+ buf.append(indent(annotations[i]));
+ }
if(fields.length > 0) {
buf.append("\n" + fields.length + " fields:\n");
@@ -646,6 +680,10 @@ public class JavaClass extends AccessFlags implements Cloneable, Node {
c.attributes = new Attribute[attributes.length];
for(int i=0; i < attributes.length; i++)
c.attributes[i] = attributes[i].copy(c.constant_pool);
+
+ //J5SUPPORT: As the annotations exist as attributes against the class, copying
+ // the attributes will copy the annotations across, so we don't have to
+ // also copy them individually.
return c;
}
@@ -657,6 +695,22 @@ public class JavaClass extends AccessFlags implements Cloneable, Node {
public final boolean isClass() {
return (access_flags & Constants.ACC_INTERFACE) == 0;
}
+
+ // J5SUPPORT:
+ /**
+ * Returns true if this class represents an annotation, i.e. it was a
+ * 'public @interface blahblah' declaration
+ */
+ public final boolean isAnnotation() {
+ return (access_flags & Constants.ACC_ANNOTATION) != 0;
+ }
+
+ /**
+ * Returns true if this class represents an enum type
+ */
+ public final boolean isEnum() {
+ return (access_flags & Constants.ACC_ENUM) != 0;
+ }
/** @return returns either HEAP (generated), FILE, or ZIP
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumber.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumber.java
index 3510d5a01..06486bc1f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumber.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumber.java
@@ -64,7 +64,7 @@ import java.io.Serializable;
* the source that corresponds to a relative address in the byte code. This
* is used for debugging purposes.
*
- * @version $Id: LineNumber.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: LineNumber.java,v 1.3 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see LineNumberTable
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumberTable.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumberTable.java
index 10768a8a0..168478b73 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumberTable.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/LineNumberTable.java
@@ -62,7 +62,7 @@ import java.io.*;
* purposes. This attribute is used by the <em>Code</em> attribute. It
* contains pairs of PCs and line numbers.
*
- * @version $Id: LineNumberTable.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LineNumberTable.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Code
* @see LineNumber
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariable.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariable.java
index 2acbe6e12..2c155149f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariable.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariable.java
@@ -61,7 +61,7 @@ import java.io.*;
* This class represents a local variable within a method. It contains its
* scope, name, signature and index on the method's frame.
*
- * @version $Id: LocalVariable.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LocalVariable.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see LocalVariableTable
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariableTable.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariableTable.java
index 8fe44cf6e..9c09d13e3 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariableTable.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/LocalVariableTable.java
@@ -61,7 +61,7 @@ import java.io.*;
* This class represents colection of local variables in a
* method. This attribute is contained in the <em>Code</em> attribute.
*
- * @version $Id: LocalVariableTable.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LocalVariableTable.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Code
* @see LocalVariable
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Method.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Method.java
index dd5a99053..56ff334e5 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Method.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Method.java
@@ -53,24 +53,38 @@ package org.aspectj.apache.bcel.classfile;
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*/
+import java.io.DataInputStream;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
import org.aspectj.apache.bcel.Constants;
+import org.aspectj.apache.bcel.classfile.annotation.Annotation;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleParameterAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleParameterAnnotations;
import org.aspectj.apache.bcel.generic.Type;
-import java.io.*;
/**
* This class represents the method info structure, i.e., the representation
* for a method in the class. See JVM specification for details.
* A method has access flags, a name, a signature and a number of attributes.
*
- * @version $Id: Method.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Method.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class Method extends FieldOrMethod {
+
+ private boolean parameterAnnotationsOutOfDate;
+ private RuntimeVisibleParameterAnnotations parameterAnnotationsVis; // annotations on parameters of this method
+ private RuntimeInvisibleParameterAnnotations parameterAnnotationsInvis;
+
/**
* Empty constructor, all attributes have to be defined via `setXXX'
* methods. Use at your own risk.
*/
- public Method() {}
+ public Method() {
+ parameterAnnotationsOutOfDate = true;
+ }
/**
* Initialize from another object. Note that both objects use the same
@@ -78,6 +92,7 @@ public final class Method extends FieldOrMethod {
*/
public Method(Method c) {
super(c);
+ parameterAnnotationsOutOfDate = true;
}
/**
@@ -90,6 +105,7 @@ public final class Method extends FieldOrMethod {
throws IOException, ClassFormatException
{
super(file, constant_pool);
+ parameterAnnotationsOutOfDate = true;
}
/**
@@ -103,6 +119,7 @@ public final class Method extends FieldOrMethod {
Attribute[] attributes, ConstantPool constant_pool)
{
super(access_flags, name_index, signature_index, attributes, constant_pool);
+ parameterAnnotationsOutOfDate = true;
}
/**
@@ -115,6 +132,11 @@ public final class Method extends FieldOrMethod {
public void accept(Visitor v) {
v.visitMethod(this);
}
+
+ public void setAttributes(Attribute[] attributes) {
+ parameterAnnotationsOutOfDate = true;
+ super.setAttributes(attributes);
+ }
/**
* @return Code attribute of method, if any
@@ -225,4 +247,37 @@ public final class Method extends FieldOrMethod {
public Type[] getArgumentTypes() {
return Type.getArgumentTypes(getSignature());
}
+
+ private void ensureParameterAnnotationsUnpacked() {
+ if (parameterAnnotationsOutOfDate) {
+ // Find attributes that contain annotation data
+ Attribute[] attrs = getAttributes();
+ List accumulatedAnnotations = new ArrayList();
+
+ for (int i = 0; i < attrs.length; i++) {
+ Attribute attribute = attrs[i];
+ if (attribute instanceof RuntimeVisibleParameterAnnotations) {
+ parameterAnnotationsVis = (RuntimeVisibleParameterAnnotations)attribute;
+ }
+ if (attribute instanceof RuntimeInvisibleParameterAnnotations) {
+ parameterAnnotationsInvis = (RuntimeInvisibleParameterAnnotations)attribute;
+ }
+ }
+ parameterAnnotationsOutOfDate = false;
+ }
+ }
+
+ public Annotation[] getAnnotationsOnParameter(int i) {
+ ensureParameterAnnotationsUnpacked();
+
+ Annotation[] visibleOnes = new Annotation[0];
+ if (parameterAnnotationsVis!=null) visibleOnes = parameterAnnotationsVis.getAnnotationsOnParameter(i);
+ Annotation[] invisibleOnes = new Annotation[0];
+ if (parameterAnnotationsInvis!=null) invisibleOnes = parameterAnnotationsInvis.getAnnotationsOnParameter(i);
+ Annotation[] complete = new Annotation[visibleOnes.length+invisibleOnes.length];
+ System.arraycopy(visibleOnes,0,complete,0,visibleOnes.length);
+ System.arraycopy(invisibleOnes,0,complete,visibleOnes.length,invisibleOnes.length);
+ return complete;
+ }
+
}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Node.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Node.java
index 6b0ceefa8..11ee287c2 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Node.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Node.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.classfile;
/**
* Denote class to have an accept method();
*
- * @version $Id: Node.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Node.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface Node {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/PMGClass.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/PMGClass.java
index d66cbfad8..2587dfa53 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/PMGClass.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/PMGClass.java
@@ -62,7 +62,7 @@ import java.io.*;
* to a <a href="http://www.inf.fu-berlin.de/~bokowski/pmgjava/index.html">PMG</a>
* attribute.
*
- * @version $Id: PMGClass.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: PMGClass.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Attribute
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Signature.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Signature.java
index b34e22e6b..c55a00919 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Signature.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Signature.java
@@ -61,7 +61,7 @@ import java.io.*;
* This class is derived from <em>Attribute</em> and represents a reference
* to a <href="http://wwwipd.ira.uka.de/~pizza/gj/">GJ</a> attribute.
*
- * @version $Id: Signature.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Signature.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Attribute
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/SourceFile.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/SourceFile.java
index 9ff14bc5f..ee93d6321 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/SourceFile.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/SourceFile.java
@@ -63,7 +63,7 @@ import java.io.*;
* should appear per classfile. The intention of this class is that it is
* instantiated from the <em>Attribute.readAttribute()</em> method.
*
- * @version $Id: SourceFile.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: SourceFile.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Attribute
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMap.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMap.java
index 2a3970b61..df976fc69 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMap.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMap.java
@@ -66,7 +66,7 @@ import java.io.*;
* within the Code attribute of a method. See CLDC specification
* §5.3.1.2
*
- * @version $Id: StackMap.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: StackMap.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Code
* @see StackMapEntry
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 903094571..d6f2d1637 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapEntry.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapEntry.java
@@ -54,16 +54,15 @@ package org.aspectj.apache.bcel.classfile;
* <http://www.apache.org/>.
*/
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.IOException;
+import org.aspectj.apache.bcel.Constants;
+import java.io.*;
/**
* 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.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: StackMapEntry.java,v 1.3 2004/11/19 16:45:18 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/classfile/StackMapType.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapType.java
index dd205b6fb..0dd072d3b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapType.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/StackMapType.java
@@ -61,7 +61,7 @@ import java.io.*;
* This class represents the type of a local variable or item on stack
* used in the StackMap entries.
*
- * @version $Id: StackMapType.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: StackMapType.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see StackMapEntry
* @see StackMap
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Synthetic.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Synthetic.java
index 8c0088cea..235c4bb4a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Synthetic.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Synthetic.java
@@ -66,7 +66,7 @@ import java.io.*;
* is intended to be instantiated from the
* <em>Attribute.readAttribute()</em> method.
*
- * @version $Id: Synthetic.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Synthetic.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Attribute
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Unknown.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Unknown.java
index 3059a0e30..851d18214 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Unknown.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Unknown.java
@@ -69,7 +69,7 @@ import java.util.*;
* org.aspectj.apache.bcel.classfile.AttributeReader)">Attribute.addAttributeReader</a>.
*
- * @version $Id: Unknown.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Unknown.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @see org.aspectj.apache.bcel.classfile.Attribute
* @see org.aspectj.apache.bcel.classfile.AttributeReader
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
@@ -170,7 +170,7 @@ public final class Unknown extends Attribute {
/**
* @return name of attribute.
*/
- public final String getName() { return name; }
+ public String getName() { return name; }
/**
* @param bytes.
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Utility.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Utility.java
index f73185b10..21b87a1cd 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Utility.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Utility.java
@@ -55,15 +55,25 @@ package org.aspectj.apache.bcel.classfile;
*/
import org.aspectj.apache.bcel.Constants;
+import org.aspectj.apache.bcel.classfile.annotation.Annotation;
+import org.aspectj.apache.bcel.classfile.annotation.ElementNameValuePair;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleParameterAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleParameterAnnotations;
+import org.aspectj.apache.bcel.generic.ConstantPoolGen;
+import org.aspectj.apache.bcel.generic.annotation.AnnotationGen;
import org.aspectj.apache.bcel.util.ByteSequence;
import java.io.*;
import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
import java.util.zip.*;
/**
* Utility functions that do not really belong to any class in particular.
*
- * @version $Id: Utility.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Utility.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class Utility {
@@ -823,11 +833,11 @@ public abstract class Utility {
* @return Java type declaration
* @throws ClassFormatException
*/
+ // J5TODO: This will have problems with nest generic types...(but then I think we all will)
public static final String signatureToString(String signature,
boolean chopit)
{
consumed_chars = 1; // This is the default, read just one char like `B'
-
try {
switch(signature.charAt(0)) {
case 'B' : return "byte";
@@ -838,14 +848,26 @@ public abstract class Utility {
case 'J' : return "long";
case 'L' : { // Full class name
- int index = signature.indexOf(';'); // Look for closing `;'
+ int index = signature.indexOf(';'); // Look for closing `;'
+ // Jump to the correct ';'
+ if (index!=-1 &&
+ signature.length()>index+1 &&
+ signature.charAt(index+1)=='>') index = index+2;
if(index < 0)
throw new ClassFormatException("Invalid signature: " + signature);
- consumed_chars = index + 1; // "Lblabla;" `L' and `;' are removed
+ int genericStart = signature.indexOf('<');
+ int genericEnd = signature.indexOf('>');
+ if (genericStart !=-1) {
+ return compactClassName(signature.substring(1,genericStart)+"<"+
+ signatureToString(signature.substring(genericStart+1,genericEnd),chopit)+">",chopit);
+ } else {
+
+ consumed_chars = index + 1; // "Lblabla;" `L' and `;' are removed
- return compactClassName(signature.substring(1, index), chopit);
+ return compactClassName(signature.substring(1, index), chopit);
+ }
}
case 'S' : return "short";
@@ -872,7 +894,7 @@ public abstract class Utility {
Utility.consumed_chars += consumed_chars;
return type + brackets.toString();
}
-
+
case 'V' : return "void";
default : throw new ClassFormatException("Invalid signature: `" +
@@ -1391,4 +1413,168 @@ public abstract class Utility {
return buf.toString();
}
+
+ public static List getListOfAnnotationNames(Annotation a) {
+ List l = a.getValues();
+ List names = new ArrayList();
+ for (Iterator i = l.iterator(); i.hasNext();) {
+ ElementNameValuePair element = (ElementNameValuePair) i.next();
+ names.add(element.getNameString());
+ }
+ return names;
+ }
+
+ /**
+ * Converts a list of AnnotationGen objects into a set of attributes
+ * that can be attached to the class file.
+ * @param cp The constant pool gen where we can create the necessary name refs
+ * @param vec A list of AnnotationGen objects
+ */
+ public static Attribute[] getAnnotationAttributes(ConstantPoolGen cp,List vec) {
+
+ if (vec.size()==0) return null;
+
+ try {
+ int countVisible = 0;
+ int countInvisible = 0;
+
+ // put the annotations in the right output stream
+ for (int i=0; i<vec.size(); i++) {
+ AnnotationGen a = (AnnotationGen)vec.get(i);
+ if (a.isRuntimeVisible()) countVisible++;
+ else countInvisible++;
+ }
+
+ ByteArrayOutputStream rvaBytes = new ByteArrayOutputStream();
+ ByteArrayOutputStream riaBytes = new ByteArrayOutputStream();
+ DataOutputStream rvaDos = new DataOutputStream(rvaBytes);
+ DataOutputStream riaDos = new DataOutputStream(riaBytes);
+
+ rvaDos.writeShort(countVisible);
+ riaDos.writeShort(countInvisible);
+
+ // put the annotations in the right output stream
+ for (int i=0; i<vec.size(); i++) {
+ AnnotationGen a = (AnnotationGen)vec.get(i);
+ if (a.isRuntimeVisible()) a.dump(rvaDos);
+ else a.dump(riaDos);
+ }
+
+ rvaDos.close();
+ riaDos.close();
+
+ byte[] rvaData = rvaBytes.toByteArray();
+ byte[] riaData = riaBytes.toByteArray();
+
+ int rvaIndex = -1;
+ int riaIndex = -1;
+
+ if (rvaData.length>2) rvaIndex = cp.addUtf8("RuntimeVisibleAnnotations");
+ if (riaData.length>2) riaIndex = cp.addUtf8("RuntimeInvisibleAnnotations");
+
+ List newAttributes = new ArrayList();
+ if (rvaData.length>2) {
+ newAttributes.add(
+ new RuntimeVisibleAnnotations(rvaIndex,rvaData.length,rvaData,cp.getConstantPool()));
+ }
+ if (riaData.length>2) {
+ newAttributes.add(
+ new RuntimeInvisibleAnnotations(riaIndex,riaData.length,riaData,cp.getConstantPool()));
+ }
+
+ return (Attribute[])newAttributes.toArray(new Attribute[]{});
+ } catch (IOException e) {
+ System.err.println("IOException whilst processing annotations");
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ /**
+ * Annotations against a class are stored in one of four attribute kinds:
+ * - RuntimeVisibleParameterAnnotations
+ * - RuntimeInvisibleParameterAnnotations
+ */
+ public static Attribute[] getParameterAnnotationAttributes(ConstantPoolGen cp,List[] /*Array of lists, array size depends on #params */ vec) {
+
+ int visCount[] = new int[vec.length];
+ int totalVisCount = 0;
+ int invisCount[] = new int[vec.length];
+ int totalInvisCount = 0;
+ try {
+
+ for (int i=0; i<vec.length; i++) {
+ List l = vec[i];
+ if (l!=null) {
+ for (Iterator iter = l.iterator(); iter.hasNext();) {
+ AnnotationGen element = (AnnotationGen) iter.next();
+ if (element.isRuntimeVisible()) {visCount[i]++;totalVisCount++;}
+ else {invisCount[i]++;totalInvisCount++;}
+ }
+ }
+ }
+
+ // Lets do the visible ones
+ ByteArrayOutputStream rvaBytes = new ByteArrayOutputStream();
+ DataOutputStream rvaDos = new DataOutputStream(rvaBytes);
+ rvaDos.writeByte(vec.length); // First goes number of parameters
+
+ for (int i=0; i<vec.length; i++) {
+ rvaDos.writeShort(visCount[i]);
+ if (visCount[i]>0) {
+ List l = vec[i];
+ for (Iterator iter = l.iterator(); iter.hasNext();) {
+ AnnotationGen element = (AnnotationGen) iter.next();
+ if (element.isRuntimeVisible()) element.dump(rvaDos);
+ }
+ }
+ }
+ rvaDos.close();
+
+ // Lets do the invisible ones
+ ByteArrayOutputStream riaBytes = new ByteArrayOutputStream();
+ DataOutputStream riaDos = new DataOutputStream(riaBytes);
+ riaDos.writeByte(vec.length); // First goes number of parameters
+
+ for (int i=0; i<vec.length; i++) {
+ riaDos.writeShort(invisCount[i]);
+ if (invisCount[i]>0) {
+ List l = vec[i];
+ for (Iterator iter = l.iterator(); iter.hasNext();) {
+ AnnotationGen element = (AnnotationGen) iter.next();
+ if (!element.isRuntimeVisible()) element.dump(riaDos);
+ }
+ }
+ }
+ riaDos.close();
+
+ byte[] rvaData = rvaBytes.toByteArray();
+ byte[] riaData = riaBytes.toByteArray();
+
+ int rvaIndex = -1;
+ int riaIndex = -1;
+
+ if (totalVisCount>0) rvaIndex = cp.addUtf8("RuntimeVisibleParameterAnnotations");
+ if (totalInvisCount>0) riaIndex = cp.addUtf8("RuntimeInvisibleParameterAnnotations");
+
+ List newAttributes = new ArrayList();
+
+ if (totalVisCount>0) {
+ newAttributes.add(
+ new RuntimeVisibleParameterAnnotations(rvaIndex,rvaData.length,rvaData,cp.getConstantPool()));
+ }
+
+
+ if (totalInvisCount>0) {
+ newAttributes.add(
+ new RuntimeInvisibleParameterAnnotations(riaIndex,riaData.length,riaData,cp.getConstantPool()));
+ }
+
+ return (Attribute[])newAttributes.toArray(new Attribute[]{});
+ } catch (IOException e) {
+ System.err.println("IOException whilst processing parameter annotations");
+ e.printStackTrace();
+ }
+ return null;
+ }
}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Visitor.java b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Visitor.java
index 6b351cded..525512d31 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/Visitor.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/Visitor.java
@@ -1,5 +1,10 @@
package org.aspectj.apache.bcel.classfile;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleParameterAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleParameterAnnotations;
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -62,7 +67,7 @@ package org.aspectj.apache.bcel.classfile;
* Implemented by wish of
* <A HREF="http://www.inf.fu-berlin.de/~bokowski">Boris Bokowski</A>.
*
- * @version $Id: Visitor.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Visitor.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface Visitor {
@@ -98,4 +103,13 @@ public interface Visitor {
public void visitUnknown(Unknown obj);
public void visitStackMap(StackMap obj);
public void visitStackMapEntry(StackMapEntry obj);
+
+ // Java5
+ public void visitEnclosingMethod(EnclosingMethod obj);
+ public void visitRuntimeVisibleAnnotations(RuntimeVisibleAnnotations obj);
+ public void visitRuntimeInvisibleAnnotations(RuntimeInvisibleAnnotations obj);
+ public void visitRuntimeVisibleParameterAnnotations(RuntimeVisibleParameterAnnotations obj);
+ public void visitRuntimeInvisibleParameterAnnotations(RuntimeInvisibleParameterAnnotations obj);
+ public void visitAnnotationDefault(AnnotationDefault obj);
+ public void visitLocalVariableTypeTable(LocalVariableTypeTable obj);
}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/classfile/package.html b/bcel-builder/src/org/aspectj/apache/bcel/classfile/package.html
index a3350329c..ef4006e36 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/classfile/package.html
+++ b/bcel-builder/src/org/aspectj/apache/bcel/classfile/package.html
@@ -2,7 +2,7 @@
<html>
<head>
<!--
-$Id: package.html,v 1.1 2004/11/18 14:48:11 aclement Exp $
+$Id: package.html,v 1.2 2004/11/19 16:45:18 aclement Exp $
-->
</head>
<body bgcolor="white">
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/AALOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/AALOAD.java
index dc7b0b605..1cc20e33a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/AALOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/AALOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* AALOAD - Load reference from array
* <PRE>Stack: ..., arrayref, index -&gt; value</PRE>
*
- * @version $Id: AALOAD.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: AALOAD.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class AALOAD extends ArrayInstruction implements StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/AASTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/AASTORE.java
index a90f1e6ab..35818a756 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/AASTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/AASTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* AASTORE - Store into reference array
* <PRE>Stack: ..., arrayref, index, value -&gt; ...</PRE>
*
- * @version $Id: AASTORE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: AASTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class AASTORE extends ArrayInstruction implements StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ACONST_NULL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ACONST_NULL.java
index 2994f5264..596264631 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ACONST_NULL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ACONST_NULL.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ACONST_NULL - Push null reference
* <PRE>Stack: ... -&gt; ..., null</PRE>
*
- * @version $Id: ACONST_NULL.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ACONST_NULL.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ACONST_NULL extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ALOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ALOAD.java
index e3f991514..9cb2dd121 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ALOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ALOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ALOAD - Load reference from local variable
* <PRE>Stack: ... -&gt; ..., objectref</PRE>
*
- * @version $Id: ALOAD.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ALOAD.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ALOAD extends LoadInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ANEWARRAY.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ANEWARRAY.java
index c62e7109e..8db7270c2 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ANEWARRAY.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ANEWARRAY.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
* ANEWARRAY - Create new array of references
* <PRE>Stack: ..., count -&gt; ..., arrayref</PRE>
*
- * @version $Id: ANEWARRAY.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ANEWARRAY.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ANEWARRAY extends CPInstruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ARETURN.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ARETURN.java
index 11a194834..9425440f5 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ARETURN.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ARETURN.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ARETURN - Return reference from method
* <PRE>Stack: ..., objectref -&gt; &lt;empty&gt;</PRE>
*
- * @version $Id: ARETURN.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ARETURN.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ARETURN extends ReturnInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ARRAYLENGTH.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ARRAYLENGTH.java
index e407ddd6a..64e079afb 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ARRAYLENGTH.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ARRAYLENGTH.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ARRAYLENGTH - Get length of array
* <PRE>Stack: ..., arrayref -&gt; ..., length</PRE>
*
- * @version $Id: ARRAYLENGTH.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ARRAYLENGTH.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ARRAYLENGTH extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ASTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ASTORE.java
index 7730350dd..8d7db57d7 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ASTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ASTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ASTORE - Store reference into local variable
* <PRE>Stack ..., objectref -&gt; ... </PRE>
*
- * @version $Id: ASTORE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ASTORE.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ASTORE extends StoreInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ATHROW.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ATHROW.java
index 4bfd6185d..8beffc698 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ATHROW.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ATHROW.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ATHROW - Throw exception
* <PRE>Stack: ..., objectref -&gt; objectref</PRE>
*
- * @version $Id: ATHROW.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ATHROW.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ATHROW extends Instruction implements UnconditionalBranch, ExceptionThrower {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/AllocationInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/AllocationInstruction.java
index ef627ae2e..c3cea122f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/AllocationInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/AllocationInstruction.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* Denote family of instructions that allocates space in the heap.
*
- * @version $Id: AllocationInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: AllocationInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface AllocationInstruction {}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ArithmeticInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ArithmeticInstruction.java
index 467405b7e..1e1c602ee 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ArithmeticInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ArithmeticInstruction.java
@@ -57,7 +57,7 @@ import org.aspectj.apache.bcel.Constants;
/**
* Super class for the family of arithmetic instructions.
*
- * @version $Id: ArithmeticInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ArithmeticInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class ArithmeticInstruction extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayInstruction.java
index ea5d2ea7d..26aae716a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayInstruction.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* Super class for instructions dealing with array access such as IALOAD.
*
- * @version $Id: ArrayInstruction.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ArrayInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class ArrayInstruction extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayType.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayType.java
index ce2fa07c9..e937a7c1d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayType.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ArrayType.java
@@ -58,7 +58,7 @@ import org.aspectj.apache.bcel.Constants;
/**
* Denotes array type, such as int[][]
*
- * @version $Id: ArrayType.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ArrayType.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class ArrayType extends ReferenceType {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/BALOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/BALOAD.java
index 0e24bcdc8..ac55a2640 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/BALOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/BALOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* BALOAD - Load byte or boolean from array
* <PRE>Stack: ..., arrayref, index -&gt; ..., value</PRE>
*
- * @version $Id: BALOAD.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: BALOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class BALOAD extends ArrayInstruction implements StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/BASTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/BASTORE.java
index 744b8f6d1..6822be233 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/BASTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/BASTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* BASTORE - Store into byte or boolean array
* <PRE>Stack: ..., arrayref, index, value -&gt; ...</PRE>
*
- * @version $Id: BASTORE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: BASTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class BASTORE extends ArrayInstruction implements StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/BIPUSH.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/BIPUSH.java
index 664f4250e..699012316 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/BIPUSH.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/BIPUSH.java
@@ -62,7 +62,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
*
* <PRE>Stack: ... -&gt; ..., value</PRE>
*
- * @version $Id: BIPUSH.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: BIPUSH.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class BIPUSH extends Instruction implements ConstantPushInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/BREAKPOINT.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/BREAKPOINT.java
index 729cf07ab..93cb32278 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/BREAKPOINT.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/BREAKPOINT.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* BREAKPOINT, JVM dependent, ignored by default
*
- * @version $Id: BREAKPOINT.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: BREAKPOINT.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class BREAKPOINT extends Instruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/BasicType.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/BasicType.java
index 0257b76e8..d4a57a05f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/BasicType.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/BasicType.java
@@ -58,7 +58,7 @@ import org.aspectj.apache.bcel.Constants;
/**
* Denotes basic type such as int.
*
- * @version $Id: BasicType.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: BasicType.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class BasicType extends Type {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/BranchHandle.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/BranchHandle.java
index 9f28acdcf..eed275112 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/BranchHandle.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/BranchHandle.java
@@ -63,7 +63,7 @@ package org.aspectj.apache.bcel.generic;
* @see InstructionHandle
* @see Instruction
* @see InstructionList
- * @version $Id: BranchHandle.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: BranchHandle.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class BranchHandle extends InstructionHandle {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/BranchInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/BranchInstruction.java
index 12c989cab..c81508076 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/BranchInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/BranchInstruction.java
@@ -63,7 +63,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
* LOOKUPSWITCH and TABLESWITCH.
*
* @see InstructionList
- * @version $Id: BranchInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: BranchInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class BranchInstruction extends Instruction implements InstructionTargeter {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/CALOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/CALOAD.java
index 13bc7080f..c63464260 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/CALOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/CALOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* CALOAD - Load char from array
* <PRE>Stack: ..., arrayref, index -&gt; ..., value</PRE>
*
- * @version $Id: CALOAD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: CALOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class CALOAD extends ArrayInstruction implements StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/CASTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/CASTORE.java
index 36c86d46d..4cf608c9e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/CASTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/CASTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* CASTORE - Store into char array
* <PRE>Stack: ..., arrayref, index, value -&gt; ...</PRE>
*
- * @version $Id: CASTORE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: CASTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class CASTORE extends ArrayInstruction implements StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/CHECKCAST.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/CHECKCAST.java
index e99e3fb38..22a16b0e7 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/CHECKCAST.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/CHECKCAST.java
@@ -58,7 +58,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
* CHECKCAST - Check whether object is of given type
* <PRE>Stack: ..., objectref -&gt; ..., objectref</PRE>
*
- * @version $Id: CHECKCAST.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: CHECKCAST.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class CHECKCAST extends CPInstruction
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 3a43d37e9..75903ae22 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.DataOutputStream;
-import java.io.IOException;
-
+import java.io.*;
+import org.aspectj.apache.bcel.util.ByteSequence;
+import org.aspectj.apache.bcel.Constants;
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.util.ByteSequence;
+import org.aspectj.apache.bcel.classfile.tests.*;
/**
* Abstract super class for instructions that use an index into the
@@ -70,7 +70,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
* @see LDC
* @see INVOKEVIRTUAL
*
- * @version $Id: CPInstruction.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: CPInstruction.java,v 1.3 2004/11/19 16:45:19 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 488ded7a6..8d2c48e92 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGen.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGen.java
@@ -55,16 +55,29 @@ package org.aspectj.apache.bcel.generic;
*/
import org.aspectj.apache.bcel.Constants;
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.AccessFlags;
+import org.aspectj.apache.bcel.classfile.Attribute;
+import org.aspectj.apache.bcel.classfile.ConstantPool;
+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.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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ClassGen.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ClassGen extends AccessFlags implements Cloneable {
@@ -81,6 +94,8 @@ public class ClassGen extends AccessFlags implements Cloneable {
private ArrayList method_vec = new ArrayList();
private ArrayList attribute_vec = new ArrayList();
private ArrayList interface_vec = new ArrayList();
+ private ArrayList annotation_vec= new ArrayList();
+ private boolean unpackedAnnotations = false;
/** Convenience constructor to set up some important values initially.
*
@@ -141,7 +156,9 @@ public class ClassGen extends AccessFlags implements Cloneable {
major = clazz.getMajor();
minor = clazz.getMinor();
- Attribute[] attributes = clazz.getAttributes();
+ Attribute[] attributes = clazz.getAttributes();
+ // J5TODO: Could make unpacking lazy, done on first reference
+ AnnotationGen[] annotations = unpackAnnotations(attributes);
Method[] methods = clazz.getMethods();
Field[] fields = clazz.getFields();
String[] interfaces = clazz.getInterfaceNames();
@@ -149,15 +166,45 @@ public class ClassGen extends AccessFlags implements Cloneable {
for(int i=0; i < interfaces.length; i++)
addInterface(interfaces[i]);
- for(int i=0; i < attributes.length; i++)
- addAttribute(attributes[i]);
+ for(int i=0; i < attributes.length; i++) {
+ // Dont add attributes for annotations as those will have been unpacked
+ if (annotations.length==0) {
+ addAttribute(attributes[i]);
+ } else if (!attributes[i].getName().equals("RuntimeVisibleAnnotations") &&
+ !attributes[i].getName().equals("RuntimeInvisibleAnnotations")) {
+ addAttribute(attributes[i]);
+ }
+ }
+ for(int i=0; i < annotations.length; i++)
+ addAnnotation(annotations[i]);
- for(int i=0; i < methods.length; i++)
- addMethod(methods[i]);
+ for(int i=0; i < methods.length; i++) {
+ Method m = methods[i];
+ addMethod(m);
+ }
for(int i=0; i < fields.length; i++)
addField(fields[i]);
}
+
+ /**
+ * Look for attributes representing annotations and unpack them.
+ */
+ private AnnotationGen[] unpackAnnotations(Attribute[] attrs) {
+ List /*AnnotationGen*/ annotationGenObjs = new ArrayList();
+ for (int i = 0; i < attrs.length; i++) {
+ Attribute attr = attrs[i];
+ if (attr instanceof RuntimeVisibleAnnotations) {
+ RuntimeVisibleAnnotations rva = (RuntimeVisibleAnnotations)attr;
+ List annos = rva.getAnnotations();
+ for (Iterator iter = annos.iterator(); iter.hasNext();) {
+ Annotation a = (Annotation) iter.next();
+ annotationGenObjs.add(new AnnotationGen(a,getConstantPool()));
+ }
+ }
+ }
+ return (AnnotationGen[])annotationGenObjs.toArray(new AnnotationGen[]{});
+ }
/**
* @return the (finally) built up Java class object.
@@ -166,7 +213,17 @@ public class ClassGen extends AccessFlags implements Cloneable {
int[] interfaces = getInterfaces();
Field[] fields = getFields();
Method[] methods = getMethods();
- Attribute[] attributes = getAttributes();
+
+ Attribute[] attributes = null;
+ if (annotation_vec.size()==0) {
+ attributes = getAttributes();
+ } else {
+ // TODO: Sometime later, trash any attributes called 'RuntimeVisibleAnnotations' or 'RuntimeInvisibleAnnotations'
+ Attribute[] annAttributes = Utility.getAnnotationAttributes(cp,annotation_vec);
+ attributes = new Attribute[attribute_vec.size()+annAttributes.length];
+ attribute_vec.toArray(attributes);
+ System.arraycopy(annAttributes,0,attributes,attribute_vec.size(),annAttributes.length);
+ }
// Must be last since the above calls may still add something to it
ConstantPool cp = this.cp.getFinalConstantPool();
@@ -222,6 +279,7 @@ public class ClassGen extends AccessFlags implements Cloneable {
*/
public void addAttribute(Attribute a) { attribute_vec.add(a); }
+ public void addAnnotation(AnnotationGen a) { annotation_vec.add(a); }
/**
* Add a method to this class.
* @param m method to add
@@ -244,6 +302,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();
addMethod(mg.getMethod());
}
@@ -284,6 +343,7 @@ public class ClassGen extends AccessFlags implements Cloneable {
* @param a attribute to remove
*/
public void removeAttribute(Attribute a) { attribute_vec.remove(a); }
+ public void removeAnnotation(AnnotationGen a) {annotation_vec.remove(a);}
/**
* Remove a method from this class.
@@ -390,7 +450,14 @@ public class ClassGen extends AccessFlags implements Cloneable {
attribute_vec.toArray(attributes);
return attributes;
}
-
+
+ // J5TODO: Should we make calling unpackAnnotations() lazy and put it in here?
+ public AnnotationGen[] getAnnotations() {
+ AnnotationGen[] annotations = new AnnotationGen[annotation_vec.size()];
+ annotation_vec.toArray(annotations);
+ return annotations;
+ }
+
public ConstantPoolGen getConstantPool() { return cp; }
public void setConstantPool(ConstantPoolGen constant_pool) {
cp = constant_pool;
@@ -448,4 +515,20 @@ public class ClassGen extends AccessFlags implements Cloneable {
return null;
}
}
+
+ // J5SUPPORT:
+
+ /**
+ * Returns true if this class represents an annotation type
+ */
+ public final boolean isAnnotation() {
+ return (access_flags & Constants.ACC_ANNOTATION) != 0;
+ }
+
+ /**
+ * Returns true if this class represents an enum type
+ */
+ public final boolean isEnum() {
+ return (access_flags & Constants.ACC_ENUM) != 0;
+ }
}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGenException.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGenException.java
index 1a6dc718f..827da3080 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGenException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassGenException.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Thrown on internal errors. Extends RuntimeException so it hasn't to be declared
* in the throws clause every time.
*
- * @version $Id: ClassGenException.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ClassGenException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ClassGenException extends RuntimeException {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassObserver.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassObserver.java
index 9003591ff..896d98abc 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassObserver.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ClassObserver.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Implement this interface if you're interested in changes to a ClassGen object
* and register yourself with addObserver().
*
- * @version $Id: ClassObserver.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ClassObserver.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface ClassObserver {
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 137d496b8..b3bb16450 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/CodeExceptionGen.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/CodeExceptionGen.java
@@ -54,7 +54,9 @@ 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
@@ -65,7 +67,7 @@ import org.aspectj.apache.bcel.classfile.CodeException;
* 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.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: CodeExceptionGen.java,v 1.3 2004/11/19 16:45:19 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/CompoundInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/CompoundInstruction.java
index 3e248b67a..480560d04 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/CompoundInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/CompoundInstruction.java
@@ -65,7 +65,7 @@ package org.aspectj.apache.bcel.generic;
* The interface provides the possibilty for the user to write
* `templates' or `macros' for such reuseable code patterns.
*
- * @version $Id: CompoundInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: CompoundInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see PUSH
* @see SWITCH
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 d2b7aabf6..ca2632ba0 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPoolGen.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPoolGen.java
@@ -55,7 +55,22 @@ package org.aspectj.apache.bcel.generic;
*/
import org.aspectj.apache.bcel.Constants;
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.Constant;
+import org.aspectj.apache.bcel.classfile.ConstantCP;
+import org.aspectj.apache.bcel.classfile.ConstantClass;
+import org.aspectj.apache.bcel.classfile.ConstantDouble;
+import org.aspectj.apache.bcel.classfile.ConstantFieldref;
+import org.aspectj.apache.bcel.classfile.ConstantFloat;
+import org.aspectj.apache.bcel.classfile.ConstantInteger;
+import org.aspectj.apache.bcel.classfile.ConstantInterfaceMethodref;
+import org.aspectj.apache.bcel.classfile.ConstantLong;
+import org.aspectj.apache.bcel.classfile.ConstantMethodref;
+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;
/**
@@ -68,7 +83,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.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantPoolGen.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Constant
*/
@@ -263,7 +278,9 @@ public class ConstantPoolGen implements java.io.Serializable {
* @return index of entry
*/
public int addClass(ObjectType type) {
+ //BCELBUG:? Should this we getClassName() - perhaps it should be getSignature() ?!?
return addClass(type.getClassName());
+// return addClass(type.getSignature());
}
/**
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPushInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPushInstruction.java
index de766b9b6..ca4a9ae3b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPushInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ConstantPushInstruction.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denotes a push instruction that produces a literal on the stack
* such as SIPUSH, BIPUSH, ICONST, etc.
*
- * @version $Id: ConstantPushInstruction.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConstantPushInstruction.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see ICONST
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ConversionInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ConversionInstruction.java
index 0e1a0cafb..e1504b1ff 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ConversionInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ConversionInstruction.java
@@ -57,7 +57,7 @@ import org.aspectj.apache.bcel.Constants;
/**
* Super class for the x2y family of instructions.
*
- * @version $Id: ConversionInstruction.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ConversionInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class ConversionInstruction extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/D2F.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/D2F.java
index 33f409009..73c49e031 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/D2F.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/D2F.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* D2F - Convert double to float
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ..., result</PRE>
*
- * @version $Id: D2F.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: D2F.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class D2F extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/D2I.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/D2I.java
index f62c3cef4..9be3cd61c 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/D2I.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/D2I.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* D2I - Convert double to int
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ..., result</PRE>
*
- * @version $Id: D2I.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: D2I.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class D2I extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/D2L.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/D2L.java
index 0a05d1b16..4c939c895 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/D2L.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/D2L.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* D2L - Convert double to long
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: D2L.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: D2L.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class D2L extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DADD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DADD.java
index 6b00cd97a..b43164aea 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DADD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DADD.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result1.word2
*
- * @version $Id: DADD.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DADD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DADD extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DALOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DALOAD.java
index 177dcda8e..6af53ea90 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DALOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DALOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DALOAD - Load double from array
* <PRE>Stack: ..., arrayref, index -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: DALOAD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DALOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DALOAD extends ArrayInstruction implements StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DASTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DASTORE.java
index aa513aa91..6b1ced1d6 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DASTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DASTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DASTORE - Store into double array
* <PRE>Stack: ..., arrayref, index, value.word1, value.word2 -&gt; ...</PRE>
*
- * @version $Id: DASTORE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DASTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DASTORE extends ArrayInstruction implements StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPG.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPG.java
index 4bb5d9d8d..bd176508d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPG.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPG.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result
*
- * @version $Id: DCMPG.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DCMPG.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DCMPG extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPL.java
index 0f5c87e08..32374a021 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DCMPL.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result
*
- * @version $Id: DCMPL.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DCMPL.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DCMPL extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DCONST.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DCONST.java
index 767d9570a..c875af8ee 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DCONST.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DCONST.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ... -&gt; ..., </PRE>
*
- * @version $Id: DCONST.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DCONST.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DCONST extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DDIV.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DDIV.java
index 761b0ea63..f7f312333 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DDIV.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DDIV.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result.word2
*
- * @version $Id: DDIV.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DDIV.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DDIV extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DLOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DLOAD.java
index 16548c9d3..873020cd8 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DLOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DLOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DLOAD - Load double from local variable
* <PRE>Stack ... -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: DLOAD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DLOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DLOAD extends LoadInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DMUL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DMUL.java
index 55aa7e023..b45981d8b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DMUL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DMUL.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result.word2
*
- * @version $Id: DMUL.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DMUL.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DMUL extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DNEG.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DNEG.java
index 5e2b478e4..89fc8dbed 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DNEG.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DNEG.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DNEG - Negate double
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: DNEG.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DNEG.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DNEG extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DREM.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DREM.java
index 8cc0c71ad..fc99c493d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DREM.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DREM.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result.word2
*
- * @version $Id: DREM.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DREM.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DREM extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DRETURN.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DRETURN.java
index a1e27affc..01460af4a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DRETURN.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DRETURN.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DRETURN - Return double from method
* <PRE>Stack: ..., value.word1, value.word2 -&gt; &lt;empty&gt;</PRE>
*
- * @version $Id: DRETURN.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DRETURN.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DRETURN extends ReturnInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DSTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DSTORE.java
index 45316fc2a..6e4d600b1 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DSTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DSTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DSTORE - Store double into local variable
* <pre>Stack: ..., value.word1, value.word2 -&gt; ... </PRE>
*
- * @version $Id: DSTORE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DSTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DSTORE extends StoreInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DSUB.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DSUB.java
index 79275e42c..5beb0ca73 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DSUB.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DSUB.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result.word2
*
- * @version $Id: DSUB.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DSUB.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DSUB extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP.java
index 8caef08d9..98ec90424 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DUP - Duplicate top operand stack word
* <PRE>Stack: ..., word -&gt; ..., word, word</PRE>
*
- * @version $Id: DUP.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DUP.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DUP extends StackInstruction implements PushInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2.java
index a758dcded..a4d84dacc 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DUP2 - Duplicate two top operand stack words
* <PRE>Stack: ..., word2, word1 -&gt; ..., word2, word1, word2, word1</PRE>
*
- * @version $Id: DUP2.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DUP2.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DUP2 extends StackInstruction implements PushInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X1.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X1.java
index d5cd70823..047c2fd41 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X1.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X1.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DUP2_X1 - Duplicate two top operand stack words and put three down
* <PRE>Stack: ..., word3, word2, word1 -&gt; ..., word2, word1, word3, word2, word1</PRE>
*
- * @version $Id: DUP2_X1.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DUP2_X1.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DUP2_X1 extends StackInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X2.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X2.java
index 3cf9d7c9a..ed62fa4ab 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X2.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP2_X2.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DUP2_X2 - Duplicate two top operand stack words and put four down
* <PRE>Stack: ..., word4, word3, word2, word1 -&gt; ..., word2, word1, word4, word3, word2, word1</PRE>
*
- * @version $Id: DUP2_X2.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DUP2_X2.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DUP2_X2 extends StackInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X1.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X1.java
index 4bf266719..46494c028 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X1.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X1.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DUP_X1 - Duplicate top operand stack word and put two down
* <PRE>Stack: ..., word2, word1 -&gt; ..., word1, word2, word1</PRE>
*
- * @version $Id: DUP_X1.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DUP_X1.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DUP_X1 extends StackInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X2.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X2.java
index fb3649d7c..5042b8815 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X2.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/DUP_X2.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* DUP_X2 - Duplicate top operand stack word and put three down
* <PRE>Stack: ..., word3, word2, word1 -&gt; ..., word1, word3, word2, word1</PRE>
*
- * @version $Id: DUP_X2.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: DUP_X2.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class DUP_X2 extends StackInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/EmptyVisitor.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/EmptyVisitor.java
index 6c53c6db4..ca983400b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/EmptyVisitor.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/EmptyVisitor.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* Supplies empty method bodies to be overridden by subclasses.
*
- * @version $Id: EmptyVisitor.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: EmptyVisitor.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class EmptyVisitor implements Visitor {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ExceptionThrower.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ExceptionThrower.java
index 6c5ad3b21..5e94141b2 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ExceptionThrower.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ExceptionThrower.java
@@ -71,7 +71,7 @@ package org.aspectj.apache.bcel.generic;
* "Throwable" object; so this term is equally used for "Exception"
* and "Error" objects.
*
- * @version $Id: ExceptionThrower.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ExceptionThrower.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase">Enver Haase</A>
*/
public interface ExceptionThrower {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/F2D.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/F2D.java
index 6683e4e79..165c02b49 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/F2D.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/F2D.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* F2D - Convert float to double
* <PRE>Stack: ..., value -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: F2D.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: F2D.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class F2D extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/F2I.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/F2I.java
index a95c27608..3f478a7f0 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/F2I.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/F2I.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* F2I - Convert float to int
* <PRE>Stack: ..., value -&gt; ..., result</PRE>
*
- * @version $Id: F2I.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: F2I.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class F2I extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/F2L.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/F2L.java
index 3649e7fde..6541ff49a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/F2L.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/F2L.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* F2L - Convert float to long
* <PRE>Stack: ..., value -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: F2L.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: F2L.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class F2L extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FADD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FADD.java
index b99867bcf..7c97cf714 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FADD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FADD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FADD - Add floats
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: FADD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FADD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FADD extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FALOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FALOAD.java
index fbc923e65..7814d971d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FALOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FALOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FALOAD - Load float from array
* <PRE>Stack: ..., arrayref, index -&gt; ..., value</PRE>
*
- * @version $Id: FALOAD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FALOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FALOAD extends ArrayInstruction implements StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FASTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FASTORE.java
index f472537eb..e27ffecae 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FASTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FASTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FASTORE - Store into float array
* <PRE>Stack: ..., arrayref, index, value -&gt; ...</PRE>
*
- * @version $Id: FASTORE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FASTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FASTORE extends ArrayInstruction implements StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPG.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPG.java
index 7d15765a0..606d1fac2 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPG.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPG.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FCMPG - Compare floats: value1 > value2
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: FCMPG.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: FCMPG.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FCMPG extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPL.java
index a38c73951..5e53952cc 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FCMPL.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FCMPL - Compare floats: value1 < value2
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: FCMPL.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FCMPL.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FCMPL extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FCONST.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FCONST.java
index 7b622b65b..c6fa0c03a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FCONST.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FCONST.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ... -&gt; ..., </PRE>
*
- * @version $Id: FCONST.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FCONST.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FCONST extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FDIV.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FDIV.java
index 1ccdd5af2..3abe077dd 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FDIV.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FDIV.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FDIV - Divide floats
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: FDIV.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FDIV.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FDIV extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FLOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FLOAD.java
index a47bddb4a..8ba53ed45 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FLOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FLOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FLOAD - Load float from local variable
* <PRE>Stack ... -&gt; ..., result</PRE>
*
- * @version $Id: FLOAD.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: FLOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FLOAD extends LoadInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FMUL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FMUL.java
index 3b9622785..066e211f8 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FMUL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FMUL.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FMUL - Multiply floats
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: FMUL.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FMUL.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FMUL extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FNEG.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FNEG.java
index 75864d2d2..3fa6addc0 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FNEG.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FNEG.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FNEG - Negate float
* <PRE>Stack: ..., value -&gt; ..., result</PRE>
*
- * @version $Id: FNEG.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FNEG.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FNEG extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FREM.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FREM.java
index c34d770f6..a32dd7f06 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FREM.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FREM.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FREM - Remainder of floats
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: FREM.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FREM.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FREM extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FRETURN.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FRETURN.java
index cf433a498..e2f996410 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FRETURN.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FRETURN.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FRETURN - Return float from method
* <PRE>Stack: ..., value -&gt; &lt;empty&gt;</PRE>
*
- * @version $Id: FRETURN.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: FRETURN.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FRETURN extends ReturnInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FSTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FSTORE.java
index a7d07b3d2..f56bba38a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FSTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FSTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FSTORE - Store float into local variable
* <PRE>Stack: ..., value -&gt; ... </PRE>
*
- * @version $Id: FSTORE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: FSTORE.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FSTORE extends StoreInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/FSUB.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FSUB.java
index b59e0da2d..00534a42f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FSUB.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FSUB.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* FSUB - Substract floats
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: FSUB.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: FSUB.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class FSUB extends ArithmeticInstruction {
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 b5f66cbef..6e2c5b9be 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGen.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGen.java
@@ -55,16 +55,28 @@ package org.aspectj.apache.bcel.generic;
*/
import org.aspectj.apache.bcel.Constants;
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.Attribute;
+import org.aspectj.apache.bcel.classfile.Constant;
+import org.aspectj.apache.bcel.classfile.ConstantObject;
+import org.aspectj.apache.bcel.classfile.ConstantPool;
+import org.aspectj.apache.bcel.classfile.ConstantValue;
+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.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: FieldGen.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Field
*/
@@ -100,10 +112,18 @@ public class FieldGen extends FieldGenOrMethodGen {
Attribute[] attrs = field.getAttributes();
for(int i=0; i < attrs.length; i++) {
- if(attrs[i] instanceof ConstantValue)
- setValue(((ConstantValue)attrs[i]).getConstantValueIndex());
- else
- addAttribute(attrs[i]);
+ if(attrs[i] instanceof ConstantValue) {
+ setValue(((ConstantValue)attrs[i]).getConstantValueIndex());
+ } else if (attrs[i] instanceof RuntimeAnnotations) {
+ RuntimeAnnotations runtimeAnnotations = (RuntimeAnnotations)attrs[i];
+ List l = runtimeAnnotations.getAnnotations();
+ for (Iterator it = l.iterator(); it.hasNext();) {
+ Annotation element = (Annotation) it.next();
+ addAnnotation(new AnnotationGen(element,cp));
+ }
+ } else {
+ addAttribute(attrs[i]);
+ }
}
}
@@ -211,10 +231,21 @@ public class FieldGen extends FieldGenOrMethodGen {
addAttribute(new ConstantValue(cp.addUtf8("ConstantValue"),
2, index, cp.getConstantPool()));
}
+
+ addAnnotationsAsAttribute(cp);
return new Field(access_flags, name_index, signature_index, getAttributes(),
cp.getConstantPool());
}
+
+ private void addAnnotationsAsAttribute(ConstantPoolGen cp) {
+ Attribute[] attrs = Utility.getAnnotationAttributes(cp,annotation_vec);
+ if (attrs!=null) {
+ for (int i = 0; i < attrs.length; i++) {
+ addAttribute(attrs[i]);
+ }
+ }
+ }
private int addConstant() {
switch(type.getType()) {
@@ -295,6 +326,9 @@ public class FieldGen extends FieldGenOrMethodGen {
if(value != null)
buf.append(" = " + value);
+
+
+ // J5TODO: Add attributes and annotations to the string
return buf.toString();
}
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 053dd6b5f..f1b80630e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGenOrMethodGen.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldGenOrMethodGen.java
@@ -55,14 +55,18 @@ import org.aspectj.apache.bcel.Constants;
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.classfile.*;
+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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FieldGenOrMethodGen.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class FieldGenOrMethodGen extends AccessFlags
@@ -72,6 +76,7 @@ public abstract class FieldGenOrMethodGen extends AccessFlags
protected Type type;
protected ConstantPoolGen cp;
private ArrayList attribute_vec = new ArrayList();
+ protected ArrayList annotation_vec= new ArrayList();
protected FieldGenOrMethodGen() {}
@@ -100,16 +105,19 @@ public abstract class FieldGenOrMethodGen extends AccessFlags
* @param a attribute to be added
*/
public void addAttribute(Attribute a) { attribute_vec.add(a); }
+ public void addAnnotation(AnnotationGen ag) { annotation_vec.add(ag);}
/**
* Remove an attribute.
*/
public void removeAttribute(Attribute a) { attribute_vec.remove(a); }
+ public void removeAnnotation(AnnotationGen ag) { annotation_vec.remove(ag);}
/**
* Remove all attributes.
*/
public void removeAttributes() { attribute_vec.clear(); }
+ public void removeAnnotations(){ annotation_vec.clear();}
/**
* @return all attributes of this method.
@@ -119,6 +127,12 @@ public abstract class FieldGenOrMethodGen extends AccessFlags
attribute_vec.toArray(attributes);
return attributes;
}
+
+ public AnnotationGen[] getAnnotations() {
+ AnnotationGen[] annotations = new AnnotationGen[annotation_vec.size()];
+ annotation_vec.toArray(annotations);
+ return annotations;
+ }
/** @return signature of method/field.
*/
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 59dcb48fb..13058a959 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldInstruction.java
@@ -55,11 +55,15 @@ 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.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: FieldInstruction.java,v 1.3 2004/11/19 16:45:19 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/FieldObserver.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldObserver.java
index 28d2ec925..1a454db6a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldObserver.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldObserver.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Imnplement this interface if you're interested in changes to a FieldGen object
* and register yourself with addObserver().
*
- * @version $Id: FieldObserver.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: FieldObserver.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface FieldObserver {
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 f117c9cba..893f31d01 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldOrMethod.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/FieldOrMethod.java
@@ -53,13 +53,17 @@ package org.aspectj.apache.bcel.generic;
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.classfile.*;
+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.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: FieldOrMethod.java,v 1.2 2004/11/19 16:45:18 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/GETFIELD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/GETFIELD.java
index 38705c6d8..a8f3f01b4 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/GETFIELD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/GETFIELD.java
@@ -63,7 +63,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
* OR
* <PRE>Stack: ..., objectref -&gt; ..., value.word1, value.word2</PRE>
*
- * @version $Id: GETFIELD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: GETFIELD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class GETFIELD extends FieldInstruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/GETSTATIC.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/GETSTATIC.java
index 98fa0cca5..49c7f3f76 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/GETSTATIC.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/GETSTATIC.java
@@ -63,7 +63,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
* OR
* <PRE>Stack: ..., -&gt; ..., value.word1, value.word2</PRE>
*
- * @version $Id: GETSTATIC.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: GETSTATIC.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class GETSTATIC extends FieldInstruction implements PushInstruction, ExceptionThrower {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO.java
index 9ce0c2e0e..ecebd4bfe 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO.java
@@ -58,7 +58,7 @@ import java.io.*;
/**
* GOTO - Branch always (to relative offset, not absolute address)
*
- * @version $Id: GOTO.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: GOTO.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class GOTO extends GotoInstruction implements VariableLengthInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO_W.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO_W.java
index 4cd902c43..0c040b8bd 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO_W.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/GOTO_W.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
/**
* GOTO_W - Branch always (to relative offset, not absolute address)
*
- * @version $Id: GOTO_W.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: GOTO_W.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class GOTO_W extends GotoInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/GotoInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/GotoInstruction.java
index 22be9fdbe..1e10a02aa 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/GotoInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/GotoInstruction.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* Super class for GOTO
*
- * @version $Id: GotoInstruction.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: GotoInstruction.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class GotoInstruction extends BranchInstruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2B.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2B.java
index 45f1d264f..1c29c3406 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2B.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2B.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* I2B - Convert int to byte
* <PRE>Stack: ..., value -&gt; ..., result</PRE>
*
- * @version $Id: I2B.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: I2B.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class I2B extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2C.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2C.java
index 11d1d25e4..ecd13015d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2C.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2C.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* I2C - Convert int to char
* <PRE>Stack: ..., value -&gt; ..., result</PRE>
*
- * @version $Id: I2C.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: I2C.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class I2C extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2D.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2D.java
index d41823d24..869817d6d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2D.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2D.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* I2D - Convert int to double
* <PRE>Stack: ..., value -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: I2D.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: I2D.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class I2D extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2F.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2F.java
index 567aae007..26a7a5fac 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2F.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2F.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* I2F - Convert int to float
* <PRE>Stack: ..., value -&gt; ..., result</PRE>
*
- * @version $Id: I2F.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: I2F.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class I2F extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2L.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2L.java
index 29e8d7717..d5f85955f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2L.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2L.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* I2L - Convert int to long
* <PRE>Stack: ..., value -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: I2L.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: I2L.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class I2L extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2S.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2S.java
index 98b6b2258..40d24221a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/I2S.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/I2S.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* I2S - Convert int to short
* <PRE>Stack: ..., value -&gt; ..., result</PRE>
*
- * @version $Id: I2S.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: I2S.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class I2S extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IADD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IADD.java
index b501bd776..5333cba1f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IADD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IADD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IADD - Add ints
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: IADD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IADD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IADD extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IALOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IALOAD.java
index 1e45ecbf1..c772e017e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IALOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IALOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IALOAD - Load int from array
* <PRE>Stack: ..., arrayref, index -&gt; ..., value</PRE>
*
- * @version $Id: IALOAD.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IALOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IALOAD extends ArrayInstruction implements StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IAND.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IAND.java
index c327c940b..1613ea697 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IAND.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IAND.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IAND - Bitwise AND int
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: IAND.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IAND.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IAND extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IASTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IASTORE.java
index 8028441b7..422e22206 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IASTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IASTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IASTORE - Store into int array
* <PRE>Stack: ..., arrayref, index, value -&gt; ...</PRE>
*
- * @version $Id: IASTORE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IASTORE.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IASTORE extends ArrayInstruction implements StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ICONST.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ICONST.java
index 78712c3fb..00bc3172b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ICONST.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ICONST.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ... -&gt; ..., </PRE>
*
- * @version $Id: ICONST.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ICONST.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ICONST extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IDIV.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IDIV.java
index 2c55f7d5d..e3953c0a3 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IDIV.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IDIV.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IDIV - Divide ints
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: IDIV.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IDIV.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IDIV extends ArithmeticInstruction implements ExceptionThrower {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFEQ.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFEQ.java
index 598bae6bb..470eb7613 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFEQ.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFEQ.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value -&gt; ...</PRE>
*
- * @version $Id: IFEQ.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IFEQ.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IFEQ extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFGE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFGE.java
index 495f6e2c6..c183608be 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFGE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFGE.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value -&gt; ...</PRE>
*
- * @version $Id: IFGE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IFGE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IFGE extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFGT.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFGT.java
index 11e1172e0..5fb8a7275 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFGT.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFGT.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value -&gt; ...</PRE>
*
- * @version $Id: IFGT.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IFGT.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IFGT extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFLE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFLE.java
index 0faec1fe8..15e5fac6a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFLE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFLE.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value -&gt; ...</PRE>
*
- * @version $Id: IFLE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IFLE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IFLE extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFLT.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFLT.java
index 9562cb3a5..59f1c5e66 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFLT.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFLT.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value -&gt; ...</PRE>
*
- * @version $Id: IFLT.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IFLT.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IFLT extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNE.java
index 574ac7eb7..f5ec78482 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNE.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value -&gt; ...</PRE>
*
- * @version $Id: IFNE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IFNE.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IFNE extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNONNULL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNONNULL.java
index 3a3d9f8ce..af6766e3a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNONNULL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNONNULL.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., reference -&gt; ...</PRE>
*
- * @version $Id: IFNONNULL.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IFNONNULL.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IFNONNULL extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNULL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNULL.java
index abb5cdc7d..6d6fcdd6f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNULL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IFNULL.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., reference -&gt; ...</PRE>
*
- * @version $Id: IFNULL.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IFNULL.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IFNULL extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPEQ.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPEQ.java
index 1d6a20b71..32246589d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPEQ.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPEQ.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value1, value2 -&gt; ...</PRE>
*
- * @version $Id: IF_ACMPEQ.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IF_ACMPEQ.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IF_ACMPEQ extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPNE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPNE.java
index f7657fb6d..984079381 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPNE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ACMPNE.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value1, value2 -&gt; ...</PRE>
*
- * @version $Id: IF_ACMPNE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IF_ACMPNE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IF_ACMPNE extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPEQ.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPEQ.java
index 45e7b1c0f..06a8a3b21 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPEQ.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPEQ.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value1, value2 -&gt; ...</PRE>
*
- * @version $Id: IF_ICMPEQ.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IF_ICMPEQ.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IF_ICMPEQ extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGE.java
index aacb42ac3..dd1e98215 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGE.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value1, value2 -&gt; ...</PRE>
*
- * @version $Id: IF_ICMPGE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IF_ICMPGE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IF_ICMPGE extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGT.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGT.java
index d3e69b383..1abe80e6d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGT.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPGT.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value1, value2 -&gt; ...</PRE>
*
- * @version $Id: IF_ICMPGT.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IF_ICMPGT.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IF_ICMPGT extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLE.java
index f898c78a3..ffcdd6954 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLE.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value1, value2 -&gt; ...</PRE>
*
- * @version $Id: IF_ICMPLE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IF_ICMPLE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IF_ICMPLE extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLT.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLT.java
index a14a6a1af..c9b6449c9 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLT.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPLT.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value1, value2 -&gt; ...</PRE>
*
- * @version $Id: IF_ICMPLT.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IF_ICMPLT.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IF_ICMPLT extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPNE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPNE.java
index ccfdb875a..7d2ed208e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPNE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IF_ICMPNE.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., value1, value2 -&gt; ...</PRE>
*
- * @version $Id: IF_ICMPNE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IF_ICMPNE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IF_ICMPNE extends IfInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IINC.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IINC.java
index 78991f5d2..ea70fc53d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IINC.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IINC.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
/**
* IINC - Increment local variable by constant
*
- * @version $Id: IINC.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IINC.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IINC extends LocalVariableInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ILOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ILOAD.java
index 1f8e69996..d85a157f4 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ILOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ILOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ILOAD - Load int from local variable onto stack
* <PRE>Stack: ... -&gt; ..., result</PRE>
*
- * @version $Id: ILOAD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ILOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ILOAD extends LoadInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP1.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP1.java
index ded62600e..7051b05ab 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP1.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP1.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* IMPDEP1 - Implementation dependent
*
- * @version $Id: IMPDEP1.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IMPDEP1.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IMPDEP1 extends Instruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP2.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP2.java
index 1fe288fc1..303e06fed 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP2.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IMPDEP2.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* IMPDEP2 - Implementation dependent
*
- * @version $Id: IMPDEP2.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IMPDEP2.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IMPDEP2 extends Instruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IMUL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IMUL.java
index 328b0b5e6..47776fcd7 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IMUL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IMUL.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IMUL - Multiply ints
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: IMUL.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IMUL.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IMUL extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/INEG.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/INEG.java
index b96f65194..f8738efc5 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/INEG.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/INEG.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* INEG - Negate int
* <PRE>Stack: ..., value -&gt; ..., result</PRE>
*
- * @version $Id: INEG.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: INEG.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class INEG extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/INSTANCEOF.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/INSTANCEOF.java
index e06dc11aa..0d5be0711 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/INSTANCEOF.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/INSTANCEOF.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* INSTANCEOF - Determine if object is of given type
* <PRE>Stack: ..., objectref -&gt; ..., result</PRE>
*
- * @version $Id: INSTANCEOF.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: INSTANCEOF.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class INSTANCEOF extends CPInstruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEINTERFACE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEINTERFACE.java
index c3ba20f4b..2d49539fd 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEINTERFACE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEINTERFACE.java
@@ -64,7 +64,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
* INVOKEINTERFACE - Invoke interface method
* <PRE>Stack: ..., objectref, [arg1, [arg2 ...]] -&gt; ...</PRE>
*
- * @version $Id: INVOKEINTERFACE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: INVOKEINTERFACE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class INVOKEINTERFACE extends InvokeInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESPECIAL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESPECIAL.java
index a86443b65..2180ef030 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESPECIAL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESPECIAL.java
@@ -62,7 +62,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
*
* <PRE>Stack: ..., objectref, [arg1, [arg2 ...]] -&gt; ...</PRE>
*
- * @version $Id: INVOKESPECIAL.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: INVOKESPECIAL.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class INVOKESPECIAL extends InvokeInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESTATIC.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESTATIC.java
index f68231ff3..dafd0b2b4 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESTATIC.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKESTATIC.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
*
* <PRE>Stack: ..., [arg1, [arg2 ...]] -&gt; ...</PRE>
*
- * @version $Id: INVOKESTATIC.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: INVOKESTATIC.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class INVOKESTATIC extends InvokeInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEVIRTUAL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEVIRTUAL.java
index 4564f41b7..de1250ac0 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEVIRTUAL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/INVOKEVIRTUAL.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
*
* <PRE>Stack: ..., objectref, [arg1, [arg2 ...]] -&gt; ...</PRE>
*
- * @version $Id: INVOKEVIRTUAL.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: INVOKEVIRTUAL.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class INVOKEVIRTUAL extends InvokeInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IOR.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IOR.java
index f26e143fa..775c32954 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IOR.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IOR.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IOR - Bitwise OR int
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: IOR.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IOR.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IOR extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IREM.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IREM.java
index 946018d49..33b9b3c1e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IREM.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IREM.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IREM - Remainder of int
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: IREM.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IREM.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IREM extends ArithmeticInstruction implements ExceptionThrower {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IRETURN.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IRETURN.java
index 304d52759..5579fa937 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IRETURN.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IRETURN.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IRETURN - Return int from method
* <PRE>Stack: ..., value -&gt; &lt;empty&gt;</PRE>
*
- * @version $Id: IRETURN.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IRETURN.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IRETURN extends ReturnInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ISHL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ISHL.java
index 98a696b9c..f7b0ca880 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ISHL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ISHL.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ISHL - Arithmetic shift left int
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: ISHL.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ISHL.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ISHL extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ISHR.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ISHR.java
index cd5aed393..e610b1c74 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ISHR.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ISHR.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ISHR - Arithmetic shift right int
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: ISHR.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ISHR.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ISHR extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ISTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ISTORE.java
index 9ee2252fd..9afdb0f3a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ISTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ISTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ISTORE - Store int from stack into local variable
* <PRE>Stack: ..., value -&gt; ... </PRE>
*
- * @version $Id: ISTORE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ISTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ISTORE extends StoreInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ISUB.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ISUB.java
index 1e0482f65..4211994cb 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ISUB.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ISUB.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* ISUB - Substract ints
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: ISUB.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ISUB.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ISUB extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IUSHR.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IUSHR.java
index 58d156ad8..b910f82cf 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IUSHR.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IUSHR.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IUSHR - Logical shift right int
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: IUSHR.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IUSHR.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IUSHR extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IXOR.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IXOR.java
index da09019c6..4ec89f6d6 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IXOR.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IXOR.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* IXOR - Bitwise XOR int
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: IXOR.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IXOR.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class IXOR extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IfInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IfInstruction.java
index b71fb110b..ee0ca3346 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IfInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IfInstruction.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* Super class for the IFxxx family of instructions.
*
- * @version $Id: IfInstruction.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: IfInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class IfInstruction extends BranchInstruction implements StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/IndexedInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/IndexedInstruction.java
index dd2d3c036..5e7e460a9 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/IndexedInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/IndexedInstruction.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denote entity that refers to an index, e.g. local variable instructions,
* RET, CPInstruction, etc.
*
- * @version $Id: IndexedInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IndexedInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface IndexedInstruction {
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 c377298fa..5fddcf7dc 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/Instruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/Instruction.java
@@ -54,18 +54,16 @@ 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.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: Instruction.java,v 1.3 2004/11/19 16:45:19 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/InstructionComparator.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionComparator.java
index 20be9195b..7f9b116f1 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionComparator.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionComparator.java
@@ -64,7 +64,7 @@ package org.aspectj.apache.bcel.generic;
* instructions must have the same target.
*
* @see Instruction
- * @version $Id: InstructionComparator.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: InstructionComparator.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface InstructionComparator {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionConstants.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionConstants.java
index 31dc042da..cf1a390e5 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionConstants.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionConstants.java
@@ -70,7 +70,7 @@ import org.aspectj.apache.bcel.Constants;
* The Instructions can also accessed directly under their names, so
* it's possible to write il.append(Instruction.ICONST_0);
*
- * @version $Id: InstructionConstants.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: InstructionConstants.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface InstructionConstants {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionFactory.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionFactory.java
index f89a5c7ed..8524f03be 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionFactory.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionFactory.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.Constants;
* byte code generating backend of a compiler. You can subclass it to
* add your own create methods.
*
- * @version $Id: InstructionFactory.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: InstructionFactory.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Constants
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionHandle.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionHandle.java
index 7722ff39b..df4b4b547 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionHandle.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionHandle.java
@@ -71,7 +71,7 @@ import java.util.HashMap;
* can traverse the list via an Enumeration returned by
* InstructionList.elements().
*
- * @version $Id: InstructionHandle.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: InstructionHandle.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Instruction
* @see BranchHandle
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionList.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionList.java
index b4eea8468..1020165f5 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionList.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionList.java
@@ -75,7 +75,7 @@ import java.util.ArrayList;
* A list is finally dumped to a byte code array with <a
* href="#getByteCode()">getByteCode</a>.
*
- * @version $Id: InstructionList.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: InstructionList.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Instruction
* @see InstructionHandle
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionListObserver.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionListObserver.java
index 3d7bed1ce..c6a28bc69 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionListObserver.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionListObserver.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Implement this interface if you're interested in changes to an InstructionList object
* and register yourself with addObserver().
*
- * @version $Id: InstructionListObserver.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: InstructionListObserver.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface InstructionListObserver {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionTargeter.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionTargeter.java
index b0949cc2f..1d19aacb7 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionTargeter.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/InstructionTargeter.java
@@ -61,7 +61,7 @@ package org.aspectj.apache.bcel.generic;
* @see BranchHandle
* @see LocalVariableGen
* @see CodeExceptionGen
- * @version $Id: InstructionTargeter.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: InstructionTargeter.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface InstructionTargeter {
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 98c7f68ea..f6a8da275 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/InvokeInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/InvokeInstruction.java
@@ -54,13 +54,16 @@ package org.aspectj.apache.bcel.generic;
* <http://www.apache.org/>.
*/
import org.aspectj.apache.bcel.Constants;
-import org.aspectj.apache.bcel.classfile.*;
+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.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: InvokeInstruction.java,v 1.2 2004/11/19 16:45:18 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/JSR.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/JSR.java
index 923c46d04..bf338e8f1 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/JSR.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/JSR.java
@@ -58,7 +58,7 @@ import java.io.*;
/**
* JSR - Jump to subroutine
*
- * @version $Id: JSR.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: JSR.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class JSR extends JsrInstruction implements VariableLengthInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/JSR_W.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/JSR_W.java
index 3e0fd2fa8..ccaab667b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/JSR_W.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/JSR_W.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
/**
* JSR_W - Jump to subroutine
*
- * @version $Id: JSR_W.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: JSR_W.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class JSR_W extends JsrInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/JsrInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/JsrInstruction.java
index 77b98342e..75c39160d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/JsrInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/JsrInstruction.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* Super class for JSR - Jump to subroutine
*
- * @version $Id: JsrInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: JsrInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class JsrInstruction extends BranchInstruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/L2D.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/L2D.java
index bfa3cbdd9..41df9bf41 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/L2D.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/L2D.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* L2D - Convert long to double
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: L2D.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: L2D.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class L2D extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/L2F.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/L2F.java
index 7a493d045..af8c53556 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/L2F.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/L2F.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* L2F - Convert long to float
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ..., result</PRE>
*
- * @version $Id: L2F.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: L2F.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class L2F extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/L2I.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/L2I.java
index f3823b43b..6cbfcf13c 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/L2I.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/L2I.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* L2I - Convert long to int
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ..., result</PRE>
*
- * @version $Id: L2I.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: L2I.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class L2I extends ConversionInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LADD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LADD.java
index 4422d8b1d..e1bc63860 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LADD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LADD.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result.word2
*
- * @version $Id: LADD.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LADD.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LADD extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LALOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LALOAD.java
index c4e6f7f97..cfa21bd69 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LALOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LALOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LALOAD - Load long from array
* <PRE>Stack: ..., arrayref, index -&gt; ..., value1, value2</PRE>
*
- * @version $Id: LALOAD.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LALOAD.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LALOAD extends ArrayInstruction implements StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LAND.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LAND.java
index 244e56d50..03770b364 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LAND.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LAND.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result.word2
*
- * @version $Id: LAND.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LAND.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LAND extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LASTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LASTORE.java
index 4c8365504..ae5637864 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LASTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LASTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LASTORE - Store into long array
* <PRE>Stack: ..., arrayref, index, value.word1, value.word2 -&gt; ...</PRE>
*
- * @version $Id: LASTORE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LASTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LASTORE extends ArrayInstruction implements StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LCMP.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LCMP.java
index 2bdcceeb2..d77a723ce 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LCMP.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LCMP.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result <= -1, 0, 1>
*
- * @version $Id: LCMP.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LCMP.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LCMP extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LCONST.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LCONST.java
index cd3a4e13d..76aeb5b0a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LCONST.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LCONST.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ... -&gt; ..., </PRE>
*
- * @version $Id: LCONST.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LCONST.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LCONST extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC.java
index 961950240..dfe293e14 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
*
* <PRE>Stack: ... -&gt; ..., item</PRE>
*
- * @version $Id: LDC.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LDC.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LDC extends CPInstruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC2_W.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC2_W.java
index 82c7857dc..3f44a4f08 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC2_W.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC2_W.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ... -&gt; ..., item.word1, item.word2</PRE>
*
- * @version $Id: LDC2_W.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LDC2_W.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LDC2_W extends CPInstruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC_W.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC_W.java
index 6975a8c5b..0269c1b7a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC_W.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LDC_W.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
*
* <PRE>Stack: ... -&gt; ..., item.word1, item.word2</PRE>
*
- * @version $Id: LDC_W.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LDC_W.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LDC_W extends LDC {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LDIV.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LDIV.java
index 22f09e0e3..dd3ec5764 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LDIV.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LDIV.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result.word2
*
- * @version $Id: LDIV.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LDIV.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LDIV extends ArithmeticInstruction implements ExceptionThrower {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LLOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LLOAD.java
index 16e0338ee..ebd528d36 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LLOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LLOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LLOAD - Load long from local variable
*<PRE>Stack ... -&GT; ..., result.word1, result.word2</PRE>
*
- * @version $Id: LLOAD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LLOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LLOAD extends LoadInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LMUL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LMUL.java
index 96f1a10c4..8a257f0c2 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LMUL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LMUL.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result.word2
*
- * @version $Id: LMUL.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LMUL.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LMUL extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LNEG.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LNEG.java
index 93e5c8760..a9535ea81 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LNEG.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LNEG.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LNEG - Negate long
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: LNEG.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LNEG.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LNEG extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LOOKUPSWITCH.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LOOKUPSWITCH.java
index f4246947a..5b0e93890 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LOOKUPSWITCH.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LOOKUPSWITCH.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
/**
* LOOKUPSWITCH - Switch with unordered set of values
*
- * @version $Id: LOOKUPSWITCH.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LOOKUPSWITCH.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see SWITCH
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LOR.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LOR.java
index 8573248b8..0a2675cd0 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LOR.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LOR.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LOR - Bitwise OR long
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: LOR.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LOR.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LOR extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LREM.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LREM.java
index b34b8dec2..c435cd118 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LREM.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LREM.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LREM - Remainder of long
* <PRE>Stack: ..., value1, value2 -&gt; result</PRE>
*
- * @version $Id: LREM.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LREM.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LREM extends ArithmeticInstruction implements ExceptionThrower {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LRETURN.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LRETURN.java
index 8e6b650fc..f8562dca7 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LRETURN.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LRETURN.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LRETURN - Return long from method
* <PRE>Stack: ..., value.word1, value.word2 -&gt; &lt;empty&gt;</PRE>
*
- * @version $Id: LRETURN.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LRETURN.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LRETURN extends ReturnInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LSHL.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LSHL.java
index e73071cea..90fbaba48 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LSHL.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LSHL.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LSHL - Arithmetic shift left long
* <PRE>Stack: ..., value1.word1, value1.word2, value2 -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: LSHL.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LSHL.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LSHL extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LSHR.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LSHR.java
index 395a152cd..002986e21 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LSHR.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LSHR.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LSHR - Arithmetic shift right long
* <PRE>Stack: ..., value1.word1, value1.word2, value2 -&gt; ..., result.word1, result.word2</PRE>
*
- * @version $Id: LSHR.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LSHR.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LSHR extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LSTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LSTORE.java
index 5794b9f3f..cfa54370a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LSTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LSTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LSTORE - Store long into local variable
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ... </PRE>
*
- * @version $Id: LSTORE.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LSTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LSTORE extends StoreInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LSUB.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LSUB.java
index 33ca8ef3d..6a8b92601 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LSUB.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LSUB.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* <PRE>Stack: ..., value1.word1, value1.word2, value2.word1, value2.word2 -&gt;</PRE>
* ..., result.word1, result.word2
*
- * @version $Id: LSUB.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LSUB.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LSUB extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LUSHR.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LUSHR.java
index 8255cf678..b3ba61c8e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LUSHR.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LUSHR.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LUSHR - Logical shift right long
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: LUSHR.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LUSHR.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LUSHR extends ArithmeticInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LXOR.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LXOR.java
index 86f114d1e..a8304ec26 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LXOR.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LXOR.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* LXOR - Bitwise XOR long
* <PRE>Stack: ..., value1, value2 -&gt; ..., result</PRE>
*
- * @version $Id: LXOR.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LXOR.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class LXOR extends ArithmeticInstruction {
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 ca8d8fb7c..a5813513d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LineNumberGen.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LineNumberGen.java
@@ -54,13 +54,15 @@ 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.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: LineNumberGen.java,v 1.3 2004/11/19 16:45:18 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/LoadClass.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LoadClass.java
index 21d0d854f..8f2679db1 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LoadClass.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LoadClass.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denotes that an instruction may start the process of loading and resolving
* the referenced class in the Virtual Machine.
*
- * @version $Id: LoadClass.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LoadClass.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface LoadClass {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/LoadInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/LoadInstruction.java
index 915b8b858..f2c7165cb 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LoadInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LoadInstruction.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denotes an unparameterized instruction to load a value from a local
* variable, e.g. ILOAD.
*
- * @version $Id: LoadInstruction.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: LoadInstruction.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class LoadInstruction extends LocalVariableInstruction
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 25abcc959..53916ea8e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableGen.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableGen.java
@@ -55,7 +55,8 @@ package org.aspectj.apache.bcel.generic;
*/
import org.aspectj.apache.bcel.Constants;
-import org.aspectj.apache.bcel.classfile.*;
+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
@@ -63,7 +64,7 @@ import org.aspectj.apache.bcel.classfile.*;
* with getLocalVariable which needs the instruction list and the constant
* pool as parameters.
*
- * @version $Id: LocalVariableGen.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LocalVariableGen.java,v 1.2 2004/11/19 16:45:19 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 dd12e56c5..904ed68ab 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/LocalVariableInstruction.java
@@ -53,16 +53,15 @@ package org.aspectj.apache.bcel.generic;
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*/
-import java.io.DataOutputStream;
-import java.io.IOException;
-
-import org.aspectj.apache.bcel.Constants;
+import java.io.*;
import org.aspectj.apache.bcel.util.ByteSequence;
+import org.aspectj.apache.bcel.classfile.Utility;
+import org.aspectj.apache.bcel.Constants;
/**
* Abstract super class for instructions dealing with local variables.
*
- * @version $Id: LocalVariableInstruction.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: LocalVariableInstruction.java,v 1.3 2004/11/19 16:45:19 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/MONITORENTER.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/MONITORENTER.java
index 74be1556f..26dbc258b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/MONITORENTER.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/MONITORENTER.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* MONITORENTER - Enter monitor for object
* <PRE>Stack: ..., objectref -&gt; ...</PRE>
*
- * @version $Id: MONITORENTER.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: MONITORENTER.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class MONITORENTER extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/MONITOREXIT.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/MONITOREXIT.java
index d8b743ac5..986eb4ea9 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/MONITOREXIT.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/MONITOREXIT.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* MONITOREXIT - Exit monitor for object
* <PRE>Stack: ..., objectref -&gt; ...</PRE>
*
- * @version $Id: MONITOREXIT.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: MONITOREXIT.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class MONITOREXIT extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/MULTIANEWARRAY.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/MULTIANEWARRAY.java
index 7133d8a4f..3472fd218 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/MULTIANEWARRAY.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/MULTIANEWARRAY.java
@@ -62,7 +62,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
* MULTIANEWARRAY - Create new mutidimensional array of references
* <PRE>Stack: ..., count1, [count2, ...] -&gt; ..., arrayref</PRE>
*
- * @version $Id: MULTIANEWARRAY.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: MULTIANEWARRAY.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class MULTIANEWARRAY extends CPInstruction implements LoadClass, AllocationInstruction, ExceptionThrower {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/MethodGen.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/MethodGen.java
index 87a7f211d..78969c1c2 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/MethodGen.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/MethodGen.java
@@ -54,9 +54,27 @@ package org.aspectj.apache.bcel.generic;
* <http://www.apache.org/>.
*/
+import java.util.ArrayList;
+import java.util.Hashtable;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Stack;
+
import org.aspectj.apache.bcel.Constants;
-import org.aspectj.apache.bcel.classfile.*;
-import java.util.*;
+import org.aspectj.apache.bcel.classfile.Attribute;
+import org.aspectj.apache.bcel.classfile.Code;
+import org.aspectj.apache.bcel.classfile.CodeException;
+import org.aspectj.apache.bcel.classfile.ExceptionTable;
+import org.aspectj.apache.bcel.classfile.LineNumber;
+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.Utility;
+import org.aspectj.apache.bcel.classfile.annotation.Annotation;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeAnnotations;
+import org.aspectj.apache.bcel.classfile.annotation.RuntimeParameterAnnotations;
+import org.aspectj.apache.bcel.generic.annotation.AnnotationGen;
/**
* Template class for building up a method. This is done by defining exception
@@ -68,7 +86,7 @@ import java.util.*;
* use the `removeNOPs' method to get rid off them.
* The resulting method object can be obtained via the `getMethod()' method.
*
- * @version $Id: MethodGen.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: MethodGen.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @author <A HREF="http://www.vmeng.com/beard">Patrick C. Beard</A> [setMaxStack()]
* @see InstructionList
@@ -88,6 +106,9 @@ public class MethodGen extends FieldGenOrMethodGen {
private ArrayList exception_vec = new ArrayList();
private ArrayList throws_vec = new ArrayList();
private ArrayList code_attrs_vec = new ArrayList();
+ private List[] param_annotations; // Array of lists containing AnnotationGen objects
+ private boolean hasParameterAnnotations = false;
+ private boolean haveUnpackedParameterAnnotations = false;
/**
* Declare method. If the method is non-static the constructor
@@ -262,8 +283,16 @@ public class MethodGen extends FieldGenOrMethodGen {
String[] names = ((ExceptionTable)a).getExceptionNames();
for(int j=0; j < names.length; j++)
addException(names[j]);
- } else
- addAttribute(a);
+ } else if (a instanceof RuntimeAnnotations) {
+ RuntimeAnnotations runtimeAnnotations = (RuntimeAnnotations)a;
+ List l = runtimeAnnotations.getAnnotations();
+ for (Iterator it = l.iterator(); it.hasNext();) {
+ Annotation element = (Annotation) it.next();
+ addAnnotation(new AnnotationGen(element,cp));
+ }
+ } else {
+ addAttribute(a);
+ }
}
}
@@ -576,6 +605,25 @@ public class MethodGen extends FieldGenOrMethodGen {
*/
public void addCodeAttribute(Attribute a) { code_attrs_vec.add(a); }
+ public void addAnnotationsAsAttribute(ConstantPoolGen cp) {
+ Attribute[] attrs = Utility.getAnnotationAttributes(cp,annotation_vec);
+ if (attrs!=null) {
+ for (int i = 0; i < attrs.length; i++) {
+ addAttribute(attrs[i]);
+ }
+ }
+ }
+
+ public void addParameterAnnotationsAsAttribute(ConstantPoolGen cp) {
+ if (!hasParameterAnnotations) return;
+ Attribute[] attrs = Utility.getParameterAnnotationAttributes(cp,param_annotations);
+ if (attrs!=null) {
+ for (int i = 0; i < attrs.length; i++) {
+ addAttribute(attrs[i]);
+ }
+ }
+ }
+
/**
* Remove a code attribute.
*/
@@ -617,6 +665,7 @@ public class MethodGen extends FieldGenOrMethodGen {
LineNumberTable lnt = null;
LocalVariableTable lvt = null;
+ //J5TODO: LocalVariableTypeTable support!
/* Create LocalVariableTable and LineNumberTable attributes (for debuggers, e.g.)
*/
@@ -643,10 +692,9 @@ public class MethodGen extends FieldGenOrMethodGen {
// Remove any stale code attribute
Attribute[] attributes = getAttributes();
for(int i=0; i < attributes.length; i++) {
- Attribute a = attributes[i];
-
- if(a instanceof Code)
- removeAttribute(a);
+ Attribute a = attributes[i];
+ if(a instanceof Code)
+ removeAttribute(a);
}
code = new Code(cp.addUtf8("Code"),
@@ -661,6 +709,10 @@ public class MethodGen extends FieldGenOrMethodGen {
addAttribute(code);
}
+
+ addAnnotationsAsAttribute(cp);
+ addParameterAnnotationsAsAttribute(cp);
+
ExceptionTable et = null;
if(throws_vec.size() > 0)
@@ -674,7 +726,7 @@ public class MethodGen extends FieldGenOrMethodGen {
if(lnt != null) removeCodeAttribute(lnt);
if(code != null) removeAttribute(code);
if(et != null) removeAttribute(et);
-
+//J5TODO: Remove the annotation attributes that may have been added
return m;
}
@@ -971,5 +1023,83 @@ public class MethodGen extends FieldGenOrMethodGen {
}
return mg;
+ }
+
+ //J5TODO: Should param_annotations be an array of arrays? Rather than an array of lists, this
+ // is more likely to suggest to the caller it is readonly (which a List does not).
+ /**
+ * Return a list of AnnotationGen objects representing parameter annotations
+ */
+ public List getAnnotationsOnParameter(int i) {
+ ensureExistingParameterAnnotationsUnpacked();
+ if (!hasParameterAnnotations || i>arg_types.length) return null;
+ return param_annotations[i];
+ }
+
+ /**
+ * Goes through the attributes on the method and identifies any that are RuntimeParameterAnnotations,
+ * extracting their contents and storing them as parameter annotations. There are two kinds of
+ * parameter annotation - visible and invisible. Once they have been unpacked, these attributes are
+ * deleted. (The annotations will be rebuilt as attributes when someone builds a Method object out
+ * of this MethodGen object).
+ */
+ private void ensureExistingParameterAnnotationsUnpacked() {
+ if (haveUnpackedParameterAnnotations) return;
+ // Find attributes that contain parameter annotation data
+ Attribute[] attrs = getAttributes();
+ RuntimeParameterAnnotations paramAnnVisAttr = null;
+ RuntimeParameterAnnotations paramAnnInvisAttr=null;
+ List accumulatedAnnotations = new ArrayList();
+ for (int i = 0; i < attrs.length; i++) {
+ Attribute attribute = attrs[i];
+ if (attribute instanceof RuntimeParameterAnnotations) {
+
+ // Initialize param_annotations
+ if (!hasParameterAnnotations) {
+ param_annotations = new List[arg_types.length];
+ for (int j=0;j<arg_types.length;j++) param_annotations[j]=new ArrayList();
+ }
+
+ hasParameterAnnotations = true;
+ RuntimeParameterAnnotations rpa = (RuntimeParameterAnnotations)attribute;
+ if (rpa.areVisible()) paramAnnVisAttr = rpa;
+ else paramAnnInvisAttr=rpa;
+ for (int j=0; j<arg_types.length; j++) {
+ // This returns Annotation[] ...
+ Annotation[] immutableArray = rpa.getAnnotationsOnParameter(j);
+ // ... which needs transforming into an AnnotationGen[] ...
+ List mutable = makeMutableVersion(immutableArray);
+ // ... then add these to any we already know about
+ param_annotations[j].addAll(mutable);
+ }
+ }
+ }
+ if (paramAnnVisAttr != null) removeAttribute(paramAnnVisAttr);
+ if (paramAnnInvisAttr!=null) removeAttribute(paramAnnInvisAttr);
+ haveUnpackedParameterAnnotations = true;
+ }
+
+ private List /*AnnotationGen*/ makeMutableVersion(Annotation[] mutableArray) {
+ List result = new ArrayList();
+ for (int i = 0; i < mutableArray.length; i++) {
+ result.add(new AnnotationGen(mutableArray[i],getConstantPool()));
+ }
+ return result;
+ }
+
+ public void addParameterAnnotation(int parameterIndex, AnnotationGen annotation) {
+ ensureExistingParameterAnnotationsUnpacked();
+ if (!hasParameterAnnotations) {
+ param_annotations = new List[arg_types.length];
+ hasParameterAnnotations = true;
+ }
+ List existingAnnotations = param_annotations[parameterIndex];
+ if (existingAnnotations != null) {
+ existingAnnotations.add(annotation);
+ } else {
+ List l = new ArrayList();
+ l.add(annotation);
+ param_annotations[parameterIndex] = l;
+ }
}
}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/MethodObserver.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/MethodObserver.java
index a9516f474..6ea987bfa 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/MethodObserver.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/MethodObserver.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Implement this interface if you're interested in changes to a MethodGen object
* and register yourself with addObserver().
*
- * @version $Id: MethodObserver.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: MethodObserver.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface MethodObserver {
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 316fa914a..0b0701b80 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/NEW.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/NEW.java
@@ -53,13 +53,14 @@ 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: ... -&gt; ..., objectref</PRE>
*
- * @version $Id: NEW.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: NEW.java,v 1.3 2004/11/19 16:45:19 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/NEWARRAY.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/NEWARRAY.java
index f4cd9fab9..ba1c1b468 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/NEWARRAY.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/NEWARRAY.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
* <PRE>Stack: ..., count -&gt; ..., arrayref</PRE>
* type must be one of T_INT, T_SHORT, ...
*
- * @version $Id: NEWARRAY.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: NEWARRAY.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class NEWARRAY extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/NOP.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/NOP.java
index cad1fdb42..3fc5ae1bf 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/NOP.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/NOP.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* NOP - Do nothing
*
- * @version $Id: NOP.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: NOP.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class NOP extends Instruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/NamedAndTyped.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/NamedAndTyped.java
index c16c56118..4b4ed30d5 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/NamedAndTyped.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/NamedAndTyped.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denote entity that has both name and type. This is true for local variables,
* methods and fields.
*
- * @version $Id: NamedAndTyped.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: NamedAndTyped.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface NamedAndTyped {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ObjectType.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ObjectType.java
index 21d4aead0..18af02c7b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ObjectType.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ObjectType.java
@@ -60,7 +60,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
/**
* Denotes reference such as java.lang.String.
*
- * @version $Id: ObjectType.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ObjectType.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class ObjectType extends ReferenceType {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/POP.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/POP.java
index 0926d6547..948e4c7e2 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/POP.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/POP.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., word -&gt; ...</PRE>
*
- * @version $Id: POP.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: POP.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class POP extends StackInstruction implements PopInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/POP2.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/POP2.java
index ca9d6fa1b..fb50175a9 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/POP2.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/POP2.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
*
* <PRE>Stack: ..., word2, word1 -&gt; ...</PRE>
*
- * @version $Id: POP2.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: POP2.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class POP2 extends StackInstruction implements PopInstruction {
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 f593f61e0..d76650f44 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/PUSH.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/PUSH.java
@@ -54,12 +54,13 @@ 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.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: PUSH.java,v 1.3 2004/11/19 16:45:19 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/PUTFIELD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/PUTFIELD.java
index 21fb71eab..916c573ec 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/PUTFIELD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/PUTFIELD.java
@@ -63,7 +63,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
* OR
* <PRE>Stack: ..., objectref, value.word1, value.word2 -&gt; ...</PRE>
*
- * @version $Id: PUTFIELD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: PUTFIELD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class PUTFIELD
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/PUTSTATIC.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/PUTSTATIC.java
index 7cc668276..abe4447eb 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/PUTSTATIC.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/PUTSTATIC.java
@@ -63,7 +63,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
* OR
* <PRE>Stack: ..., value.word1, value.word2 -&gt; ...</PRE>
*
- * @version $Id: PUTSTATIC.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: PUTSTATIC.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class PUTSTATIC extends FieldInstruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/PopInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/PopInstruction.java
index 4594a91d9..4f93f975a 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/PopInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/PopInstruction.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denotes an unparameterized instruction to pop a value on top from the stack,
* such as ISTORE, POP, PUTSTATIC.
*
- * @version $Id: PopInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: PopInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see ISTORE
* @see POP
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/PushInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/PushInstruction.java
index 6626a9ffc..c9a997265 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/PushInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/PushInstruction.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denotes an unparameterized instruction to produce a value on top of the stack,
* such as ILOAD, LDC, SIPUSH, DUP, ICONST, etc.
*
- * @version $Id: PushInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: PushInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see ILOAD
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/RET.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/RET.java
index 0940ebcbe..39f374997 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/RET.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/RET.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
*
* <PRE>Stack: ..., -&gt; ..., address</PRE>
*
- * @version $Id: RET.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: RET.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class RET extends Instruction implements IndexedInstruction, TypedInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/RETURN.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/RETURN.java
index 449209cf7..ce7449dd4 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/RETURN.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/RETURN.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* RETURN - Return from void method
* <PRE>Stack: ... -&gt; &lt;empty&gt;</PRE>
*
- * @version $Id: RETURN.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: RETURN.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class RETURN extends ReturnInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ReferenceType.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ReferenceType.java
index 0a6381345..13a8d6358 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ReferenceType.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ReferenceType.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
/**
* Super class for object and array types.
*
- * @version $Id: ReferenceType.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: ReferenceType.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class ReferenceType extends Type {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnInstruction.java
index 69eaa3f84..7ed21807d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnInstruction.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.ExceptionConstants;
/**
* Super class for the xRETURN family of instructions.
*
- * @version $Id: ReturnInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ReturnInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class ReturnInstruction extends Instruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnaddressType.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnaddressType.java
index ca4b39dd4..0b1c6a418 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnaddressType.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/ReturnaddressType.java
@@ -60,7 +60,7 @@ import org.aspectj.apache.bcel.generic.InstructionHandle;
* Returnaddress, the type JSR or JSR_W instructions push upon the stack.
*
* see vmspec2 §3.3.3
- * @version $Id: ReturnaddressType.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ReturnaddressType.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase">Enver Haase</A>
*/
public class ReturnaddressType extends Type {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/SALOAD.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/SALOAD.java
index 083268b41..da41cdfcb 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/SALOAD.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/SALOAD.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* SALOAD - Load short from array
* <PRE>Stack: ..., arrayref, index -&gt; ..., value</PRE>
*
- * @version $Id: SALOAD.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: SALOAD.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class SALOAD extends ArrayInstruction implements StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/SASTORE.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/SASTORE.java
index 1468a0a54..4c1afb0fb 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/SASTORE.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/SASTORE.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* SASTORE - Store into short array
* <PRE>Stack: ..., arrayref, index, value -&gt; ...</PRE>
*
- * @version $Id: SASTORE.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: SASTORE.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class SASTORE extends ArrayInstruction implements StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/SIPUSH.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/SIPUSH.java
index eea1f4ea1..717947172 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/SIPUSH.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/SIPUSH.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
*
* <PRE>Stack: ... -&gt; ..., value</PRE>
*
- * @version $Id: SIPUSH.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: SIPUSH.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class SIPUSH extends Instruction implements ConstantPushInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/SWAP.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/SWAP.java
index f8d2ed78e..ee2b4e39b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/SWAP.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/SWAP.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* SWAP - Swa top operand stack word
* <PRE>Stack: ..., word2, word1 -&gt; ..., word1, word2</PRE>
*
- * @version $Id: SWAP.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: SWAP.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class SWAP extends StackInstruction implements StackConsumer, StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/SWITCH.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/SWITCH.java
index 0da2ac03a..35e4aa468 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/SWITCH.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/SWITCH.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.generic;
* TABLESWITCH instruction, depending on whether the match values (int[]) can be
* sorted with no gaps between the numbers.
*
- * @version $Id: SWITCH.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: SWITCH.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class SWITCH implements CompoundInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/Select.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/Select.java
index c62752820..6a8b19d9d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/Select.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/Select.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
/**
* Select - Abstract super class for LOOKUPSWITCH and TABLESWITCH instructions.
*
- * @version $Id: Select.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: Select.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see LOOKUPSWITCH
* @see TABLESWITCH
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/StackConsumer.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/StackConsumer.java
index 8cc24e47d..f302caa35 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/StackConsumer.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/StackConsumer.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* Denote an instruction that may consume a value from the stack.
*
- * @version $Id: StackConsumer.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: StackConsumer.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface StackConsumer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/StackInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/StackInstruction.java
index 48fc67861..e98f38286 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/StackInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/StackInstruction.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* Super class for stack operations like DUP and POP.
*
- * @version $Id: StackInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: StackInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class StackInstruction extends Instruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/StackProducer.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/StackProducer.java
index d08bfa816..4fc3ea20c 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/StackProducer.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/StackProducer.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denote an instruction that may produce a value on top of the stack
* (this excludes DUP_X1, e.g.)
*
- * @version $Id: StackProducer.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: StackProducer.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface StackProducer {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/StoreInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/StoreInstruction.java
index 58572cc5f..a069c6e89 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/StoreInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/StoreInstruction.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denotes an unparameterized instruction to store a value into a local variable,
* e.g. ISTORE.
*
- * @version $Id: StoreInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: StoreInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public abstract class StoreInstruction extends LocalVariableInstruction
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/TABLESWITCH.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/TABLESWITCH.java
index 8ef688aeb..b934f369d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/TABLESWITCH.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/TABLESWITCH.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.util.ByteSequence;
/**
* TABLESWITCH - Switch within given range of values, i.e., low..high
*
- * @version $Id: TABLESWITCH.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: TABLESWITCH.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see SWITCH
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/TargetLostException.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/TargetLostException.java
index 0aa6d52ca..e72394da4 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/TargetLostException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/TargetLostException.java
@@ -82,7 +82,7 @@ package org.aspectj.apache.bcel.generic;
* @see InstructionHandle
* @see InstructionList
* @see InstructionTargeter
- * @version $Id: TargetLostException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: TargetLostException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class TargetLostException extends Exception {
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 718bcb93b..704fb6c72 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java
@@ -55,14 +55,17 @@ package org.aspectj.apache.bcel.generic;
*/
import org.aspectj.apache.bcel.Constants;
-import org.aspectj.apache.bcel.classfile.*;
+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.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Type.java,v 1.2 2004/11/19 16:45:18 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/generic/TypedInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/TypedInstruction.java
index c0e68ee7b..98a58719e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/TypedInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/TypedInstruction.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Get the type associated with an instruction, int for ILOAD, or the type
* of the field of a PUTFIELD instruction, e.g..
*
- * @version $Id: TypedInstruction.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: TypedInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface TypedInstruction {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/UnconditionalBranch.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/UnconditionalBranch.java
index 2898746a2..36257b260 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/UnconditionalBranch.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/UnconditionalBranch.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.generic;
/**
* Denotes an instruction to perform an unconditional branch, i.e., GOTO, JSR.
*
- * @version $Id: UnconditionalBranch.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: UnconditionalBranch.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see GOTO
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/VariableLengthInstruction.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/VariableLengthInstruction.java
index dc68e5561..462a3f1d3 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/VariableLengthInstruction.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/VariableLengthInstruction.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.generic;
* Denotes an instruction to be a variable length instruction, such as
* GOTO, JSR, LOOKUPSWITCH and TABLESWITCH.
*
- * @version $Id: VariableLengthInstruction.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: VariableLengthInstruction.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see GOTO
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/Visitor.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/Visitor.java
index d7a904eb6..91024133e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/Visitor.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/Visitor.java
@@ -60,7 +60,7 @@ package org.aspectj.apache.bcel.generic;
* instructions with the properly typed methods just by calling the accept()
* method.
*
- * @version $Id: Visitor.java,v 1.1 2004/11/18 14:48:11 aclement Exp $
+ * @version $Id: Visitor.java,v 1.2 2004/11/19 16:45:18 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public interface Visitor {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/package.html b/bcel-builder/src/org/aspectj/apache/bcel/generic/package.html
index 39bae63ac..ac6c8ef75 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/generic/package.html
+++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/package.html
@@ -2,7 +2,7 @@
<html>
<head>
<!--
-$Id: package.html,v 1.1 2004/11/18 14:48:11 aclement Exp $
+$Id: package.html,v 1.2 2004/11/19 16:45:19 aclement Exp $
-->
</head>
<body bgcolor="white">
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/package.html b/bcel-builder/src/org/aspectj/apache/bcel/package.html
index a9b32543a..9d71a08ee 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/package.html
+++ b/bcel-builder/src/org/aspectj/apache/bcel/package.html
@@ -2,7 +2,7 @@
<html>
<head>
<!--
-$Id: package.html,v 1.1 2004/11/18 14:48:12 aclement Exp $
+$Id: package.html,v 1.2 2004/11/19 16:45:19 aclement Exp $
-->
</head>
<body bgcolor="white">
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 54414ad6f..6363d6abd 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/AttributeHTML.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/AttributeHTML.java
@@ -54,13 +54,29 @@ package org.aspectj.apache.bcel.util;
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.Attribute;
+import org.aspectj.apache.bcel.classfile.Code;
+import org.aspectj.apache.bcel.classfile.CodeException;
+import org.aspectj.apache.bcel.classfile.ConstantPool;
+import org.aspectj.apache.bcel.classfile.ConstantUtf8;
+import org.aspectj.apache.bcel.classfile.ConstantValue;
+import org.aspectj.apache.bcel.classfile.ExceptionTable;
+import org.aspectj.apache.bcel.classfile.InnerClass;
+import org.aspectj.apache.bcel.classfile.InnerClasses;
+import org.aspectj.apache.bcel.classfile.LineNumber;
+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.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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: AttributeHTML.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/BCELFactory.java b/bcel-builder/src/org/aspectj/apache/bcel/util/BCELFactory.java
index ba8b54948..9402f0a96 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/BCELFactory.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/BCELFactory.java
@@ -65,7 +65,7 @@ import java.util.*;
* A helper class for BCELifier.
*
* @see BCELifier
- * @version $Id: BCELFactory.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: BCELFactory.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
class BCELFactory extends EmptyVisitor {
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 b680d1484..fd21bf30f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/BCELifier.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/BCELifier.java
@@ -53,7 +53,13 @@ package org.aspectj.apache.bcel.util;
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.classfile.*;
+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;
@@ -66,7 +72,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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: BCELifier.java,v 1.2 2004/11/19 16:45:19 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/ByteSequence.java b/bcel-builder/src/org/aspectj/apache/bcel/util/ByteSequence.java
index 0d3963163..58b21e82d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/ByteSequence.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ByteSequence.java
@@ -60,7 +60,7 @@ import java.io.*;
* via the `readByte()' method. This is used to implement a wrapper for the
* Java byte code stream to gain some more readability.
*
- * @version $Id: ByteSequence.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ByteSequence.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public final class ByteSequence extends DataInputStream {
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 33330f816..e09b30e77 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/Class2HTML.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/Class2HTML.java
@@ -54,18 +54,17 @@ package org.aspectj.apache.bcel.util;
* <http://www.apache.org/>.
*/
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.PrintWriter;
+import java.io.*;
+import java.util.BitSet;
-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.
@@ -86,7 +85,7 @@ import org.aspectj.apache.bcel.classfile.Utility;
* method in the Method's frame will jump to the appropiate method in
* the Code frame.
*
- * @version $Id: Class2HTML.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: Class2HTML.java,v 1.3 2004/11/19 16:45:19 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 90ab36843..7641fa78b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoader.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoader.java
@@ -57,7 +57,13 @@ package org.aspectj.apache.bcel.util;
import java.util.Hashtable;
import java.io.*;
import org.aspectj.apache.bcel.*;
-import org.aspectj.apache.bcel.classfile.*;
+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
@@ -77,7 +83,7 @@ import org.aspectj.apache.bcel.classfile.*;
* where to use the system class loader in the constructor. The default value contains
* "java.", "sun.", "javax."</p>
*
- * @version $Id: ClassLoader.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ClassLoader.java,v 1.2 2004/11/19 16:45:19 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 11ea8064e..5928fbd79 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoaderRepository.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassLoaderRepository.java
@@ -54,12 +54,14 @@ package org.aspectj.apache.bcel.util;
* <http://www.apache.org/>.
*/
-import java.io.IOException;
-import java.io.InputStream;
+import java.io.*;
+
+import java.util.Map;
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
@@ -70,7 +72,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
*
* @see org.aspectj.apache.bcel.Repository
*
- * @version $Id: ClassLoaderRepository.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: ClassLoaderRepository.java,v 1.3 2004/11/19 16:45:19 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/ClassPath.java b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassPath.java
index 39acde6c0..ef9d1e5c3 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassPath.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassPath.java
@@ -62,23 +62,21 @@ import java.io.*;
* Responsible for loading (class) files from the CLASSPATH. Inspired by
* sun.tools.ClassPath.
*
- * @version $Id: ClassPath.java,v 1.2 2004/11/18 16:00:19 aclement Exp $
+ * @version $Id: ClassPath.java,v 1.3 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*/
public class ClassPath implements Serializable {
- private static ClassPath SYSTEM_CLASS_PATH;
+ private static ClassPath SYSTEM_CLASS_PATH = null;
+
+ private PathEntry[] paths;
+ private String class_path;
-
public static ClassPath getSystemClassPath() {
- if (SYSTEM_CLASS_PATH==null) {
+ if (SYSTEM_CLASS_PATH == null) {
SYSTEM_CLASS_PATH = new ClassPath();
}
return SYSTEM_CLASS_PATH;
}
-
- private PathEntry[] paths;
- private String class_path;
-
/**
* Search for classes in given path.
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassQueue.java b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassQueue.java
index b05f22589..2793fb450 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassQueue.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassQueue.java
@@ -60,7 +60,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
* Utility class implementing a (typesafe) queue of JavaClass
* objects.
*
- * @version $Id: ClassQueue.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ClassQueue.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see ClassVector
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassSet.java b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassSet.java
index cad52fe16..a647da32c 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassSet.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassSet.java
@@ -62,7 +62,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
* Since JavaClass has no equals() method, the name of the class is
* used for comparison.
*
- * @version $Id: ClassSet.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ClassSet.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see ClassStack
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassStack.java b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassStack.java
index 9c6643961..effd38b44 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassStack.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassStack.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
/**
* Utility class implementing a (typesafe) stack of JavaClass objects.
*
- * @version $Id: ClassStack.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ClassStack.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see Stack
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassVector.java b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassVector.java
index 7693b3b15..1f73c9334 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/ClassVector.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ClassVector.java
@@ -60,7 +60,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
* Utility class implementing a (typesafe) collection of JavaClass
* objects. Contains the most important methods of a Vector.
*
- * @version $Id: ClassVector.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ClassVector.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see ClassQueue
*/
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 3e430af06..ddc9d5de6 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/CodeHTML.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/CodeHTML.java
@@ -54,14 +54,27 @@ package org.aspectj.apache.bcel.util;
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.Attribute;
+import org.aspectj.apache.bcel.classfile.Code;
+import org.aspectj.apache.bcel.classfile.CodeException;
+import org.aspectj.apache.bcel.classfile.ConstantFieldref;
+import org.aspectj.apache.bcel.classfile.ConstantInterfaceMethodref;
+import org.aspectj.apache.bcel.classfile.ConstantMethodref;
+import org.aspectj.apache.bcel.classfile.ConstantNameAndType;
+import org.aspectj.apache.bcel.classfile.ConstantPool;
+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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: CodeHTML.java,v 1.2 2004/11/19 16:45:19 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 445b6e21f..6734d4d6f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/ConstantHTML.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/ConstantHTML.java
@@ -55,13 +55,24 @@ package org.aspectj.apache.bcel.util;
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.Constant;
+import org.aspectj.apache.bcel.classfile.ConstantClass;
+import org.aspectj.apache.bcel.classfile.ConstantFieldref;
+import org.aspectj.apache.bcel.classfile.ConstantInterfaceMethodref;
+import org.aspectj.apache.bcel.classfile.ConstantMethodref;
+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.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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ConstantHTML.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/InstructionFinder.java b/bcel-builder/src/org/aspectj/apache/bcel/util/InstructionFinder.java
index 3f2c02c32..c0eb6e9db 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/InstructionFinder.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/InstructionFinder.java
@@ -81,7 +81,7 @@ import org.apache.regexp.*;
...
}
</pre>
- * @version $Id: InstructionFinder.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: InstructionFinder.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.berlin.de/~markus.dahm/">M. Dahm</A>
* @see Instruction
* @see InstructionList
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/JavaWrapper.java b/bcel-builder/src/org/aspectj/apache/bcel/util/JavaWrapper.java
index 2ce3eaa3f..353a000b8 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/JavaWrapper.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/JavaWrapper.java
@@ -68,7 +68,7 @@ import java.lang.reflect.*;
* <pre>java org.aspectj.apache.bcel.util.JavaWrapper -Dbcel.classloader=foo.MyLoader &lt;real.class.name&gt; [arguments]</pre>
* </p>
*
- * @version $Id: JavaWrapper.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: JavaWrapper.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
* @see ClassLoader
*/
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 a45307597..3f27cd1a8 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/MethodHTML.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/MethodHTML.java
@@ -54,13 +54,21 @@ package org.aspectj.apache.bcel.util;
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.Attribute;
+import org.aspectj.apache.bcel.classfile.Code;
+import org.aspectj.apache.bcel.classfile.ConstantValue;
+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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: MethodHTML.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="mailto:markus.dahm@berlin.de">M. Dahm</A>
*
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/util/Repository.java b/bcel-builder/src/org/aspectj/apache/bcel/util/Repository.java
index 763566764..8b8bec2e8 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/Repository.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/Repository.java
@@ -62,7 +62,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
* Repository.setRepository method.
*
* @see org.aspectj.apache.bcel.Repository
- * @version $Id: Repository.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: Repository.java,v 1.2 2004/11/19 16:45:19 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/SyntheticRepository.java b/bcel-builder/src/org/aspectj/apache/bcel/util/SyntheticRepository.java
index 36936794e..9f0e098c4 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/SyntheticRepository.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/SyntheticRepository.java
@@ -54,12 +54,14 @@ package org.aspectj.apache.bcel.util;
* <http://www.apache.org/>.
*/
-import java.io.IOException;
-import java.io.InputStream;
+import java.io.*;
+
+import java.util.Map;
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
@@ -78,7 +80,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
*
* @see org.aspectj.apache.bcel.Repository
*
- * @version $Id: SyntheticRepository.java,v 1.3 2004/11/18 16:00:19 aclement Exp $
+ * @version $Id: SyntheticRepository.java,v 1.4 2004/11/19 16:45:19 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/package.html b/bcel-builder/src/org/aspectj/apache/bcel/util/package.html
index 53df3a0e6..9c2177946 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/util/package.html
+++ b/bcel-builder/src/org/aspectj/apache/bcel/util/package.html
@@ -2,7 +2,7 @@
<html>
<head>
<!--
-$Id: package.html,v 1.1 2004/11/18 14:48:12 aclement Exp $
+$Id: package.html,v 1.2 2004/11/19 16:45:19 aclement Exp $
-->
</head>
<body bgcolor="white">
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 4bb635ec0..602399046 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/GraphicalVerifier.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/GraphicalVerifier.java
@@ -54,18 +54,16 @@ package org.aspectj.apache.bcel.verifier;
* <http://www.apache.org/>.
*/
-import java.awt.Dimension;
-import java.awt.Toolkit;
-
import javax.swing.UIManager;
-
-import org.aspectj.apache.bcel.generic.Type;
+import java.awt.*;
+import org.aspectj.apache.bcel.verifier.*;
+import org.aspectj.apache.bcel.generic.*;
/**
* A graphical user interface application demonstrating JustIce.
*
- * @version $Id: GraphicalVerifier.java,v 1.2 2004/11/18 15:07:06 aclement Exp $
+ * @version $Id: GraphicalVerifier.java,v 1.3 2004/11/19 16:45:19 aclement Exp $
* @author Enver Haase
*/
public class GraphicalVerifier {
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/NativeVerifier.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/NativeVerifier.java
index b984b81ac..ff31f8957 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/NativeVerifier.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/NativeVerifier.java
@@ -61,7 +61,7 @@ package org.aspectj.apache.bcel.verifier;
* This can be used for comparison runs between the JVM-internal verifier
* and JustIce.
*
- * @version $Id: NativeVerifier.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: NativeVerifier.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public abstract class NativeVerifier{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/PassVerifier.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/PassVerifier.java
index 9cb9e23c7..d059d8885 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/PassVerifier.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/PassVerifier.java
@@ -77,7 +77,7 @@ import java.util.ArrayList;
* That means, if you really want a new verification run of a certain
* pass you must use a new instance of a given PassVerifier.
*
- * @version $Id: PassVerifier.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: PassVerifier.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
* @see org.aspectj.apache.bcel.verifier.Verifier
* @see #verify()
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 ff0904360..6cc1954fc 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/TransitiveHull.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/TransitiveHull.java
@@ -54,8 +54,10 @@ package org.aspectj.apache.bcel.verifier;
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.Repository;
+import org.aspectj.apache.bcel.verifier.*;
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
@@ -63,7 +65,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
* all class files encountered; this may take up a lot of time and,
* more notably, memory.
*
- * @version $Id: TransitiveHull.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: TransitiveHull.java,v 1.3 2004/11/19 16:45:19 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/VerificationResult.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerificationResult.java
index 01ab0660c..f87dda6d9 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerificationResult.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerificationResult.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.verifier;
* A VerificationResult is what a PassVerifier returns
* after verifying.
*
- * @version $Id: VerificationResult.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: VerificationResult.java,v 1.2 2004/11/19 16:45:19 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/Verifier.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/Verifier.java
index 5632b9032..0827266f6 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/Verifier.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/Verifier.java
@@ -54,16 +54,15 @@ 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.
@@ -75,7 +74,7 @@ import org.aspectj.apache.bcel.verifier.structurals.Pass3bVerifier;
* A Verifier creates PassVerifier instances to perform the actual verification.
* Verifier instances are usually generated by the VerifierFactory.
*
- * @version $Id: Verifier.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: Verifier.java,v 1.3 2004/11/19 16:45:19 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 13aaebbcf..b602f09dd 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierAppFrame.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierAppFrame.java
@@ -54,36 +54,20 @@ package org.aspectj.apache.bcel.verifier;
* <http://www.apache.org/>.
*/
-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 java.awt.*;
+import java.awt.event.*;
+import javax.swing.*;
+import javax.swing.event.*;
+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.*;
/**
* This class implements a machine-generated frame for use with
* the GraphicalVerfifier.
*
- * @version $Id: VerifierAppFrame.java,v 1.2 2004/11/18 15:07:06 aclement Exp $
+ * @version $Id: VerifierAppFrame.java,v 1.3 2004/11/19 16:45:19 aclement Exp $
* @author Enver Haase
* @see GraphicalVerifier
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactory.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactory.java
index 15f9547de..5b50b0cbc 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactory.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactory.java
@@ -64,7 +64,7 @@ import java.util.Vector;
* operate on. That means, for every class (represented by a unique fully qualified
* class name) there is exactly one Verifier.
*
- * @version $Id: VerifierFactory.java,v 1.2 2004/11/18 16:00:19 aclement Exp $
+ * @version $Id: VerifierFactory.java,v 1.3 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
* @see org.aspectj.apache.bcel.verifier.Verifier
*/
@@ -91,7 +91,7 @@ public class VerifierFactory{
* @return the (only) verifier responsible for the class with the given name.
*/
public static Verifier getVerifier(String fully_qualified_classname){
- //fully_qualified_classname = fully_qualified_classname;
+ fully_qualified_classname = fully_qualified_classname;
Verifier v = (Verifier) (hashMap.get(fully_qualified_classname));
if (v==null){
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 9746c71c9..b41304351 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryListModel.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryListModel.java
@@ -53,12 +53,13 @@ package org.aspectj.apache.bcel.verifier;
* information on the Apache Software Foundation, please see
* <http://www.apache.org/>.
*/
-import javax.swing.event.ListDataEvent;
+import org.aspectj.apache.bcel.verifier.*;
+import javax.swing.event.*;
/**
* This class implements an adapter; it implements both a Swing ListModel and
* a VerifierFactoryObserver.
*
- * @version $Id: VerifierFactoryListModel.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: VerifierFactoryListModel.java,v 1.3 2004/11/19 16:45:19 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/VerifierFactoryObserver.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryObserver.java
index c8f5a0532..16750b9b3 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryObserver.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifierFactoryObserver.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.verifier;
* VerifierFactoryObserver instances are notified when new Verifier
* instances are created.
*
- * @version $Id: VerifierFactoryObserver.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: VerifierFactoryObserver.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*
* @see VerifierFactory#getVerifier(String)
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 80ec01a23..f4ba545c9 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifyDialog.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/VerifyDialog.java
@@ -54,10 +54,11 @@ package org.aspectj.apache.bcel.verifier;
* <http://www.apache.org/>.
*/
-import java.awt.Color;
-
-import org.aspectj.apache.bcel.Repository;
+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;
/**
* A class for simple graphical class file verification.
@@ -68,7 +69,7 @@ import org.aspectj.apache.bcel.classfile.JavaClass;
* 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.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: VerifyDialog.java,v 1.3 2004/11/19 16:45:19 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/exc/AssertionViolatedException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/AssertionViolatedException.java
index 35d1d726e..7fff671a8 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/AssertionViolatedException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/AssertionViolatedException.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* Instances of this class should never be thrown. When such an instance is thrown,
* this is due to an INTERNAL ERROR of BCEL's class file verifier &quot;JustIce&quot;.
*
- * @version $Id: AssertionViolatedException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: AssertionViolatedException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public final class AssertionViolatedException extends RuntimeException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/ClassConstraintException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/ClassConstraintException.java
index 6a1030f4b..c156a9d6b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/ClassConstraintException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/ClassConstraintException.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* when a class file to verify does not pass the verification pass 2 as described
* in the Java Virtual Machine specification, 2nd edition.
*
- * @version $Id: ClassConstraintException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ClassConstraintException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class ClassConstraintException extends VerificationException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/CodeConstraintException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/CodeConstraintException.java
index ba57cbac3..9ef154fd5 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/CodeConstraintException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/CodeConstraintException.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* a class file does not pass the verification pass 3. Note that the pass 3 used by
* "JustIce" involves verification that is usually delayed to pass 4.
*
- * @version $Id: CodeConstraintException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: CodeConstraintException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public abstract class CodeConstraintException extends VerificationException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/InvalidMethodException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/InvalidMethodException.java
index 5471b1eb3..04084567e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/InvalidMethodException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/InvalidMethodException.java
@@ -57,7 +57,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* Instances of this class are thrown by BCEL's class file verifier "JustIce"
* when the verification of a method is requested that does not exist.
*
- * @version $Id: InvalidMethodException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: InvalidMethodException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class InvalidMethodException extends RuntimeException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LinkingConstraintException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LinkingConstraintException.java
index 8d9c1f443..41d7187cc 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LinkingConstraintException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LinkingConstraintException.java
@@ -67,7 +67,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* and Resolution") of the above mentioned book.
* <B>TODO: At this time, this class is not used in JustIce.</B>
*
- * @version $Id: LinkingConstraintException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LinkingConstraintException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class LinkingConstraintException extends StructuralCodeConstraintException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LoadingException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LoadingException.java
index 6c6601df0..ab4661639 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LoadingException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LoadingException.java
@@ -58,7 +58,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* When loading a class file, BCEL will throw an instance of LoadingException if
* the class file is malformed; so it is not conforming to the "Pass 1" verification
* process as described in the Java Virtual Machine specification, 2nd. edition.
- * @version $Id: LoadingException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LoadingException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class LoadingException extends VerifierConstraintViolatedException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LocalVariableInfoInconsistentException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LocalVariableInfoInconsistentException.java
index d3f4a0f01..ee52a9b92 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LocalVariableInfoInconsistentException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/LocalVariableInfoInconsistentException.java
@@ -61,7 +61,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* LocalVariableTable entries in the Code attribute of a certain
* Method object.
*
- * @version $Id: LocalVariableInfoInconsistentException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LocalVariableInfoInconsistentException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class LocalVariableInfoInconsistentException extends ClassConstraintException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeConstraintException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeConstraintException.java
index c0261ac3c..e5ed87a0f 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeConstraintException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeConstraintException.java
@@ -61,7 +61,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* 2nd edition, 4.8.1, pages 133-137. The static constraints checking part of pass 3
* is called pass 3a in JustIce.
*
- * @version $Id: StaticCodeConstraintException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: StaticCodeConstraintException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public abstract class StaticCodeConstraintException extends CodeConstraintException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionConstraintException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionConstraintException.java
index f796535b5..629ff6dfe 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionConstraintException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionConstraintException.java
@@ -64,7 +64,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* pass 3a and are described on page 134 in the Java Virtual Machine Specification,
* Second Edition.
*
- * @version $Id: StaticCodeInstructionConstraintException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: StaticCodeInstructionConstraintException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class StaticCodeInstructionConstraintException extends StaticCodeConstraintException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionOperandConstraintException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionOperandConstraintException.java
index 09b5ded35..7a5fbabd5 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionOperandConstraintException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StaticCodeInstructionOperandConstraintException.java
@@ -64,7 +64,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* pass 3a and are described on page 134-137 in the Java Virtual Machine Specification,
* Second Edition.
*
- * @version $Id: StaticCodeInstructionOperandConstraintException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: StaticCodeInstructionOperandConstraintException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class StaticCodeInstructionOperandConstraintException extends StaticCodeConstraintException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StructuralCodeConstraintException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StructuralCodeConstraintException.java
index 98b264f8e..8f09a91a0 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StructuralCodeConstraintException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/StructuralCodeConstraintException.java
@@ -63,7 +63,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* These are the constraints where data-flow analysis is needed to verify if they hold.
* The data flow analysis of pass 3 is called pass 3b in JustIce.
*
- * @version $Id: StructuralCodeConstraintException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: StructuralCodeConstraintException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class StructuralCodeConstraintException extends CodeConstraintException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/Utility.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/Utility.java
index 17a7cae05..095ec3344 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/Utility.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/Utility.java
@@ -58,7 +58,7 @@ import java.io.*;
/**
* A utility class providing convenience methods concerning Throwable instances.
- * @version $Id: Utility.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: Utility.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
* @see java.lang.Throwable
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerificationException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerificationException.java
index 6e695a36e..70bca7091 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerificationException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerificationException.java
@@ -63,7 +63,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* edition, page 164, 5.4.1 where verification as a part of the linking process is
* defined to be the verification happening in passes 2 and 3.
*
- * @version $Id: VerificationException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: VerificationException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public abstract class VerificationException extends VerifierConstraintViolatedException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerifierConstraintViolatedException.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerifierConstraintViolatedException.java
index cf7f271fb..15ce45239 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerifierConstraintViolatedException.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/VerifierConstraintViolatedException.java
@@ -62,7 +62,7 @@ package org.aspectj.apache.bcel.verifier.exc;
* This is roughly equivalent to the VerifyError the JVM-internal verifiers
* throw.
*
- * @version $Id: VerifierConstraintViolatedException.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: VerifierConstraintViolatedException.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public abstract class VerifierConstraintViolatedException extends RuntimeException{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/package.html b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/package.html
index 4ebd82786..cfd38591b 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/package.html
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/exc/package.html
@@ -2,7 +2,7 @@
<html>
<head>
<!--
-$Id: package.html,v 1.1 2004/11/18 14:48:12 aclement Exp $
+$Id: package.html,v 1.2 2004/11/19 16:45:19 aclement Exp $
-->
</head>
<body bgcolor="white">
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/package.html b/bcel-builder/src/org/aspectj/apache/bcel/verifier/package.html
index 53a7b3079..b9213e330 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/package.html
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/package.html
@@ -2,7 +2,7 @@
<html>
<head>
<!--
-$Id: package.html,v 1.1 2004/11/18 14:48:12 aclement Exp $
+$Id: package.html,v 1.2 2004/11/19 16:45:19 aclement Exp $
-->
</head>
<body bgcolor="white">
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/DOUBLE_Upper.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/DOUBLE_Upper.java
index 4ef6c1bc8..ed68a24a8 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/DOUBLE_Upper.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/DOUBLE_Upper.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.generic.Type;
/**
* This class represents the upper half of a DOUBLE variable.
- * @version $Id: DOUBLE_Upper.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: DOUBLE_Upper.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public final class DOUBLE_Upper extends Type{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/IntList.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/IntList.java
index 39a211ec6..dce612d48 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/IntList.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/IntList.java
@@ -59,7 +59,7 @@ import java.util.ArrayList;
/**
* A small utility class representing a set of basic int values.
*
- * @version $Id: IntList.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: IntList.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class IntList{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LONG_Upper.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LONG_Upper.java
index 01cde3020..9b1bbeae4 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LONG_Upper.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LONG_Upper.java
@@ -59,7 +59,7 @@ import org.aspectj.apache.bcel.generic.Type;
/**
* This class represents the upper half of a LONG variable.
- * @version $Id: LONG_Upper.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LONG_Upper.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public final class LONG_Upper extends Type{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariableInfo.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariableInfo.java
index cb0fc7f36..443444e2e 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariableInfo.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariableInfo.java
@@ -64,7 +64,7 @@ import java.util.Hashtable;
* a given slot (== index). This information
* often changes in course of byte code offsets.
*
- * @version $Id: LocalVariableInfo.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LocalVariableInfo.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class LocalVariableInfo{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariablesInfo.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariablesInfo.java
index ce26ec731..6f7a656b8 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariablesInfo.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/LocalVariablesInfo.java
@@ -62,7 +62,7 @@ import org.aspectj.apache.bcel.verifier.exc.*;
* the names and the types of the local variables in
* a given method.
*
- * @version $Id: LocalVariablesInfo.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LocalVariablesInfo.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class LocalVariablesInfo{
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 044748f78..3b30210ce 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,7 +54,8 @@ package org.aspectj.apache.bcel.verifier.statics;
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.classfile.*;
+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.*;
@@ -66,7 +67,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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: Pass1Verifier.java,v 1.2 2004/11/19 16:45:19 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 4a9e99d18..62bef2e02 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
@@ -56,10 +56,42 @@ package org.aspectj.apache.bcel.verifier.statics;
import org.aspectj.apache.bcel.Constants;
import org.aspectj.apache.bcel.Repository;
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.Attribute;
+import org.aspectj.apache.bcel.classfile.Code;
+import org.aspectj.apache.bcel.classfile.CodeException;
+import org.aspectj.apache.bcel.classfile.Constant;
+import org.aspectj.apache.bcel.classfile.ConstantClass;
+import org.aspectj.apache.bcel.classfile.ConstantDouble;
+import org.aspectj.apache.bcel.classfile.ConstantFieldref;
+import org.aspectj.apache.bcel.classfile.ConstantFloat;
+import org.aspectj.apache.bcel.classfile.ConstantInteger;
+import org.aspectj.apache.bcel.classfile.ConstantInterfaceMethodref;
+import org.aspectj.apache.bcel.classfile.ConstantLong;
+import org.aspectj.apache.bcel.classfile.ConstantMethodref;
+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.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.ExceptionTable;
+import org.aspectj.apache.bcel.classfile.Field;
+import org.aspectj.apache.bcel.classfile.InnerClass;
+import org.aspectj.apache.bcel.classfile.InnerClasses;
+import org.aspectj.apache.bcel.classfile.JavaClass;
+import org.aspectj.apache.bcel.classfile.LineNumber;
+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.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.*;
@@ -73,7 +105,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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: Pass2Verifier.java,v 1.2 2004/11/19 16:45:19 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 1a4c71d15..02658327a 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
@@ -56,7 +56,29 @@ package org.aspectj.apache.bcel.verifier.statics;
import org.aspectj.apache.bcel.*;
import org.aspectj.apache.bcel.generic.*;
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.Attribute;
+import org.aspectj.apache.bcel.classfile.Code;
+import org.aspectj.apache.bcel.classfile.CodeException;
+import org.aspectj.apache.bcel.classfile.Constant;
+import org.aspectj.apache.bcel.classfile.ConstantClass;
+import org.aspectj.apache.bcel.classfile.ConstantDouble;
+import org.aspectj.apache.bcel.classfile.ConstantFieldref;
+import org.aspectj.apache.bcel.classfile.ConstantFloat;
+import org.aspectj.apache.bcel.classfile.ConstantInteger;
+import org.aspectj.apache.bcel.classfile.ConstantInterfaceMethodref;
+import org.aspectj.apache.bcel.classfile.ConstantLong;
+import org.aspectj.apache.bcel.classfile.ConstantMethodref;
+import org.aspectj.apache.bcel.classfile.ConstantNameAndType;
+import org.aspectj.apache.bcel.classfile.ConstantString;
+import org.aspectj.apache.bcel.classfile.ConstantUtf8;
+import org.aspectj.apache.bcel.classfile.Field;
+import org.aspectj.apache.bcel.classfile.JavaClass;
+import org.aspectj.apache.bcel.classfile.LineNumber;
+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.*;
@@ -67,7 +89,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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: Pass3aVerifier.java,v 1.2 2004/11/19 16:45:19 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 21cff1ae8..55c7b5cd6 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
@@ -54,7 +54,40 @@ package org.aspectj.apache.bcel.verifier.statics;
* <http://www.apache.org/>.
*/
-import org.aspectj.apache.bcel.classfile.*;
+import org.aspectj.apache.bcel.classfile.Code;
+import org.aspectj.apache.bcel.classfile.CodeException;
+import org.aspectj.apache.bcel.classfile.ConstantClass;
+import org.aspectj.apache.bcel.classfile.ConstantDouble;
+import org.aspectj.apache.bcel.classfile.ConstantFieldref;
+import org.aspectj.apache.bcel.classfile.ConstantFloat;
+import org.aspectj.apache.bcel.classfile.ConstantInteger;
+import org.aspectj.apache.bcel.classfile.ConstantInterfaceMethodref;
+import org.aspectj.apache.bcel.classfile.ConstantLong;
+import org.aspectj.apache.bcel.classfile.ConstantMethodref;
+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.ConstantValue;
+import org.aspectj.apache.bcel.classfile.Deprecated;
+import org.aspectj.apache.bcel.classfile.ExceptionTable;
+import org.aspectj.apache.bcel.classfile.Field;
+import org.aspectj.apache.bcel.classfile.InnerClass;
+import org.aspectj.apache.bcel.classfile.InnerClasses;
+import org.aspectj.apache.bcel.classfile.JavaClass;
+import org.aspectj.apache.bcel.classfile.LineNumber;
+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.Node;
+import org.aspectj.apache.bcel.classfile.Signature;
+import org.aspectj.apache.bcel.classfile.SourceFile;
+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.*;
/**
@@ -69,7 +102,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.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: StringRepresentation.java,v 1.2 2004/11/19 16:45:19 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/statics/package.html b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/package.html
index 6c917b8bc..403d492f8 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/package.html
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/statics/package.html
@@ -2,7 +2,7 @@
<html>
<head>
<!--
-$Id: package.html,v 1.1 2004/11/18 14:48:12 aclement Exp $
+$Id: package.html,v 1.2 2004/11/19 16:45:19 aclement Exp $
-->
</head>
<body bgcolor="white">
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 02f8c2523..e8091342a 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,27 +54,15 @@ package org.aspectj.apache.bcel.verifier.structurals;
* <http://www.apache.org/>.
*/
-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;
+import org.aspectj.apache.bcel.generic.*;
+import org.aspectj.apache.bcel.verifier.VerifierFactory;
+import org.aspectj.apache.bcel.verifier.exc.*;
+import java.util.*;
/**
* This class represents a control flow graph of a method.
*
- * @version $Id: ControlFlowGraph.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: ControlFlowGraph.java,v 1.3 2004/11/19 16:45:19 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/ExceptionHandler.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExceptionHandler.java
index b706bfc08..e715aa605 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExceptionHandler.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExceptionHandler.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.generic.*;
* representing a subclass of java.lang.Throwable and the instruction
* the handler starts off (represented by an InstructionContext).
*
- * @version $Id: ExceptionHandler.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ExceptionHandler.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class ExceptionHandler{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExceptionHandlers.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExceptionHandlers.java
index 8a9e66778..a0754501d 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExceptionHandlers.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/ExceptionHandlers.java
@@ -61,7 +61,7 @@ import java.util.Hashtable;
/**
* This class allows easy access to ExceptionHandler objects.
*
- * @version $Id: ExceptionHandlers.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: ExceptionHandlers.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class ExceptionHandlers{
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 343f633e1..30c2e013b 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,13 +55,19 @@ 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.generic.*;
+import org.aspectj.apache.bcel.verifier.Verifier;
+import org.aspectj.apache.bcel.verifier.exc.*;
+import java.util.ArrayList;
+import java.util.Hashtable;
/**
* This Visitor class may be used for a type-based Java Virtual Machine
@@ -86,7 +92,7 @@ import org.aspectj.apache.bcel.generic.*;
* 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.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: ExecutionVisitor.java,v 1.3 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
* @see #visitDSTORE(DSTORE o)
* @see InstConstraintVisitor
@@ -748,8 +754,8 @@ public class ExecutionVisitor extends EmptyVisitor implements Visitor{
public void visitINVOKESPECIAL(INVOKESPECIAL o){
if (o.getMethodName(cpg).equals(Constants.CONSTRUCTOR_NAME)){
UninitializedObjectType t = (UninitializedObjectType) stack().peek(o.getArgumentTypes(cpg).length);
- if (t == Frame._this){
- Frame._this = null;
+ if (t == frame._this){
+ frame._this = null;
}
stack().initializeObject(t);
locals().initializeObject(t);
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 04a93af13..95bf14dd8 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,12 +54,15 @@ 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.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: Frame.java,v 1.3 2004/11/19 16:45:19 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/GenericArray.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/GenericArray.java
index 8b9632d4a..bee196904 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/GenericArray.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/GenericArray.java
@@ -59,7 +59,7 @@ package org.aspectj.apache.bcel.verifier.structurals;
* has some of the properties arrays have. They implement java.lang.Cloneable
* and java.io.Serializable and they extend java.lang.Object.
*
- * @version $Id: GenericArray.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: GenericArray.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class GenericArray extends java.lang.Object implements java.lang.Cloneable, java.io.Serializable{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstConstraintVisitor.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstConstraintVisitor.java
index fec1baabd..5cd7b5510 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstConstraintVisitor.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/InstConstraintVisitor.java
@@ -79,7 +79,7 @@ import org.aspectj.apache.bcel.verifier.exc.*;
* TODO: Currently, the JVM's behaviour concerning monitors (MONITORENTER,
* MONITOREXIT) is not modeled in JustIce.
*
- * @version $Id: InstConstraintVisitor.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: InstConstraintVisitor.java,v 1.3 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
* @see org.aspectj.apache.bcel.verifier.exc.StructuralCodeConstraintException
* @see org.aspectj.apache.bcel.verifier.exc.LinkingConstraintException
@@ -2576,7 +2576,7 @@ public class InstConstraintVisitor extends EmptyVisitor implements org.aspectj.a
*/
public void visitRETURN(RETURN o){
if (mg.getName().equals(Constants.CONSTRUCTOR_NAME)){// If we leave an <init> method
- if ((Frame._this != null) && (!(mg.getClassName().equals(Type.OBJECT.getClassName()))) ) {
+ if ((frame._this != null) && (!(mg.getClassName().equals(Type.OBJECT.getClassName()))) ) {
constraintViolated(o, "Leaving a constructor that itself did not call a constructor.");
}
}
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 810c0b3e4..ffe567dc9 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 java.util.ArrayList;
-
import org.aspectj.apache.bcel.generic.InstructionHandle;
+import java.util.ArrayList;
+import java.util.Iterator;
/**
* An InstructionContext offers convenient access
* to information like control flow successors and
* such.
*
- * @version $Id: InstructionContext.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: InstructionContext.java,v 1.3 2004/11/19 16:45:19 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/LocalVariables.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/LocalVariables.java
index e3ce99cec..44a690886 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/LocalVariables.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/LocalVariables.java
@@ -62,7 +62,7 @@ import org.aspectj.apache.bcel.verifier.exc.*;
* This class implements an array of local variables used for symbolic JVM
* simulation.
*
- * @version $Id: LocalVariables.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: LocalVariables.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class LocalVariables{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/OperandStack.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/OperandStack.java
index 333dcb312..5d41008b2 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/OperandStack.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/OperandStack.java
@@ -63,7 +63,7 @@ import java.util.*;
* [It's used an an operand stack substitute.]
* Elements of this stack are org.aspectj.apache.bcel.generic.Type objects.
*
- * @version $Id: OperandStack.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: OperandStack.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class OperandStack{
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 584a33eb0..0388850f9 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,30 +54,19 @@ package org.aspectj.apache.bcel.verifier.structurals;
* <http://www.apache.org/>.
*/
-import java.io.PrintWriter;
-import java.io.StringWriter;
+import java.io.*;
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.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;
+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.*;
/**
* This PassVerifier verifies a method of class file according to pass 3,
@@ -86,7 +75,7 @@ import org.aspectj.apache.bcel.verifier.exc.VerifierConstraintViolatedException;
* More detailed information is to be found at the do_verify() method's
* documentation.
*
- * @version $Id: Pass3bVerifier.java,v 1.2 2004/11/18 15:07:05 aclement Exp $
+ * @version $Id: Pass3bVerifier.java,v 1.3 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
* @see #do_verify()
*/
@@ -332,11 +321,11 @@ public final class Pass3bVerifier extends PassVerifier{
Frame f = new Frame(mg.getMaxLocals(),mg.getMaxStack());
if ( !mg.isStatic() ){
if (mg.getName().equals(Constants.CONSTRUCTOR_NAME)){
- Frame._this = new UninitializedObjectType(new ObjectType(jc.getClassName()));
- f.getLocals().set(0, Frame._this);
+ f._this = new UninitializedObjectType(new ObjectType(jc.getClassName()));
+ f.getLocals().set(0, f._this);
}
else{
- Frame._this = null;
+ f._this = null;
f.getLocals().set(0, new ObjectType(jc.getClassName()));
}
}
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutine.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutine.java
index 186278f72..36a381ae6 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutine.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutine.java
@@ -61,7 +61,7 @@ import org.aspectj.apache.bcel.generic.*;
* Note that it is 'abused' to maintain the top-level code in a
* consistent fashion, too.
*
- * @version $Id: Subroutine.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: Subroutine.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public interface Subroutine{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutines.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutines.java
index efe9fe6a3..6afbee473 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutines.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/Subroutines.java
@@ -83,7 +83,7 @@ import java.util.Iterator;
*
* TODO: refer to the paper.
*
- * @version $Id: Subroutines.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: Subroutines.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
* @see #getTopLevel()
*/
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/UninitializedObjectType.java b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/UninitializedObjectType.java
index ab08ac068..39d2405e4 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/UninitializedObjectType.java
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/UninitializedObjectType.java
@@ -62,7 +62,7 @@ import org.aspectj.apache.bcel.generic.*;
* Virtual Machine Specification, Second Edition, page 147: 4.9.4 for
* more details.
*
- * @version $Id: UninitializedObjectType.java,v 1.1 2004/11/18 14:48:12 aclement Exp $
+ * @version $Id: UninitializedObjectType.java,v 1.2 2004/11/19 16:45:19 aclement Exp $
* @author <A HREF="http://www.inf.fu-berlin.de/~ehaase"/>Enver Haase</A>
*/
public class UninitializedObjectType extends ReferenceType implements Constants{
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/package.html b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/package.html
index f471ca132..40232167c 100644
--- a/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/package.html
+++ b/bcel-builder/src/org/aspectj/apache/bcel/verifier/structurals/package.html
@@ -2,7 +2,7 @@
<html>
<head>
<!--
-$Id: package.html,v 1.1 2004/11/18 14:48:12 aclement Exp $
+$Id: package.html,v 1.2 2004/11/19 16:45:19 aclement Exp $
-->
</head>
<body bgcolor="white">