--- old/src/share/classes/jdk/internal/org/objectweb/asm/tree/analysis/Interpreter.java Thu Apr 25 10:11:01 2013 +++ new/src/share/classes/jdk/internal/org/objectweb/asm/tree/analysis/Interpreter.java Thu Apr 25 10:11:01 2013 @@ -71,7 +71,8 @@ * various semantic interpreters, without needing to duplicate the code to * simulate the transfer of values. * - * @param type of the Value used for the analysis. + * @param + * type of the Value used for the analysis. * * @author Eric Bruneton */ @@ -86,12 +87,13 @@ /** * Creates a new value that represents the given type. * - * Called for method parameters (including this), - * exception handler variable and with null type - * for variables reserved by long and double types. + * Called for method parameters (including this), exception + * handler variable and with null type for variables reserved + * by long and double types. * - * @param type a primitive or reference type, or null to - * represent an uninitialized value. + * @param type + * a primitive or reference type, or null to represent + * an uninitialized value. * @return a value that represents the given type. The size of the returned * value must be equal to the size of the given type. */ @@ -105,9 +107,11 @@ * ICONST_5, LCONST_0, LCONST_1, FCONST_0, FCONST_1, FCONST_2, DCONST_0, * DCONST_1, BIPUSH, SIPUSH, LDC, JSR, GETSTATIC, NEW * - * @param insn the bytecode instruction to be interpreted. + * @param insn + * the bytecode instruction to be interpreted. * @return the result of the interpretation of the given instruction. - * @throws AnalyzerException if an error occured during the interpretation. + * @throws AnalyzerException + * if an error occured during the interpretation. */ public abstract V newOperation(AbstractInsnNode insn) throws AnalyzerException; @@ -119,11 +123,14 @@ * ILOAD, LLOAD, FLOAD, DLOAD, ALOAD, ISTORE, LSTORE, FSTORE, DSTORE, * ASTORE, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, SWAP * - * @param insn the bytecode instruction to be interpreted. - * @param value the value that must be moved by the instruction. + * @param insn + * the bytecode instruction to be interpreted. + * @param value + * the value that must be moved by the instruction. * @return the result of the interpretation of the given instruction. The * returned value must be equal to the given value. - * @throws AnalyzerException if an error occured during the interpretation. + * @throws AnalyzerException + * if an error occured during the interpretation. */ public abstract V copyOperation(AbstractInsnNode insn, V value) throws AnalyzerException; @@ -138,10 +145,13 @@ * PUTSTATIC, GETFIELD, NEWARRAY, ANEWARRAY, ARRAYLENGTH, ATHROW, CHECKCAST, * INSTANCEOF, MONITORENTER, MONITOREXIT, IFNULL, IFNONNULL * - * @param insn the bytecode instruction to be interpreted. - * @param value the argument of the instruction to be interpreted. + * @param insn + * the bytecode instruction to be interpreted. + * @param value + * the argument of the instruction to be interpreted. * @return the result of the interpretation of the given instruction. - * @throws AnalyzerException if an error occured during the interpretation. + * @throws AnalyzerException + * if an error occured during the interpretation. */ public abstract V unaryOperation(AbstractInsnNode insn, V value) throws AnalyzerException; @@ -157,11 +167,15 @@ * DCMPG, IF_ICMPEQ, IF_ICMPNE, IF_ICMPLT, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, * IF_ACMPEQ, IF_ACMPNE, PUTFIELD * - * @param insn the bytecode instruction to be interpreted. - * @param value1 the first argument of the instruction to be interpreted. - * @param value2 the second argument of the instruction to be interpreted. + * @param insn + * the bytecode instruction to be interpreted. + * @param value1 + * the first argument of the instruction to be interpreted. + * @param value2 + * the second argument of the instruction to be interpreted. * @return the result of the interpretation of the given instruction. - * @throws AnalyzerException if an error occured during the interpretation. + * @throws AnalyzerException + * if an error occured during the interpretation. */ public abstract V binaryOperation(AbstractInsnNode insn, V value1, V value2) throws AnalyzerException; @@ -172,18 +186,20 @@ * * IASTORE, LASTORE, FASTORE, DASTORE, AASTORE, BASTORE, CASTORE, SASTORE * - * @param insn the bytecode instruction to be interpreted. - * @param value1 the first argument of the instruction to be interpreted. - * @param value2 the second argument of the instruction to be interpreted. - * @param value3 the third argument of the instruction to be interpreted. + * @param insn + * the bytecode instruction to be interpreted. + * @param value1 + * the first argument of the instruction to be interpreted. + * @param value2 + * the second argument of the instruction to be interpreted. + * @param value3 + * the third argument of the instruction to be interpreted. * @return the result of the interpretation of the given instruction. - * @throws AnalyzerException if an error occured during the interpretation. + * @throws AnalyzerException + * if an error occured during the interpretation. */ - public abstract V ternaryOperation( - AbstractInsnNode insn, - V value1, - V value2, - V value3) throws AnalyzerException; + public abstract V ternaryOperation(AbstractInsnNode insn, V value1, + V value2, V value3) throws AnalyzerException; /** * Interprets a bytecode instruction with a variable number of arguments. @@ -192,14 +208,16 @@ * INVOKEVIRTUAL, INVOKESPECIAL, INVOKESTATIC, INVOKEINTERFACE, * MULTIANEWARRAY and INVOKEDYNAMIC * - * @param insn the bytecode instruction to be interpreted. - * @param values the arguments of the instruction to be interpreted. + * @param insn + * the bytecode instruction to be interpreted. + * @param values + * the arguments of the instruction to be interpreted. * @return the result of the interpretation of the given instruction. - * @throws AnalyzerException if an error occured during the interpretation. + * @throws AnalyzerException + * if an error occured during the interpretation. */ - public abstract V naryOperation( - AbstractInsnNode insn, - List< ? extends V> values) throws AnalyzerException; + public abstract V naryOperation(AbstractInsnNode insn, + List values) throws AnalyzerException; /** * Interprets a bytecode return instruction. This method is called for the @@ -207,15 +225,17 @@ * * IRETURN, LRETURN, FRETURN, DRETURN, ARETURN * - * @param insn the bytecode instruction to be interpreted. - * @param value the argument of the instruction to be interpreted. - * @param expected the expected return type of the analyzed method. - * @throws AnalyzerException if an error occured during the interpretation. + * @param insn + * the bytecode instruction to be interpreted. + * @param value + * the argument of the instruction to be interpreted. + * @param expected + * the expected return type of the analyzed method. + * @throws AnalyzerException + * if an error occured during the interpretation. */ - public abstract void returnOperation( - AbstractInsnNode insn, - V value, - V expected) throws AnalyzerException; + public abstract void returnOperation(AbstractInsnNode insn, V value, + V expected) throws AnalyzerException; /** * Merges two values. The merge operation must return a value that @@ -224,8 +244,10 @@ * values are integer intervals, the merged value must be an interval that * contains the previous ones. Likewise for other types of values). * - * @param v a value. - * @param w another value. + * @param v + * a value. + * @param w + * another value. * @return the merged value. If the merged value is equal to v, * this method must return v. */