Class SimpleVerifier
java.lang.Object
org.objectweb.asm.tree.analysis.Interpreter<org.objectweb.asm.tree.analysis.BasicValue>
org.objectweb.asm.tree.analysis.BasicInterpreter
org.objectweb.asm.tree.analysis.BasicVerifier
org.objectweb.asm.tree.analysis.SimpleVerifier
com.offbynull.coroutines.instrumenter.asm.SimpleVerifier
- All Implemented Interfaces:
org.objectweb.asm.Opcodes
public final class SimpleVerifier
extends org.objectweb.asm.tree.analysis.SimpleVerifier
An extension to ASM's
SimpleVerifier that uses ClassInformationRepository to derive type
information rather than a classloader.-
Field Summary
FieldsFields inherited from class org.objectweb.asm.tree.analysis.BasicInterpreter
NULL_TYPEFields inherited from class org.objectweb.asm.tree.analysis.Interpreter
apiFields inherited from interface org.objectweb.asm.Opcodes
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MANDATED, ACC_MODULE, ACC_NATIVE, ACC_OPEN, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_RECORD, ACC_STATIC, ACC_STATIC_PHASE, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_TRANSITIVE, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASM10_EXPERIMENTAL, ASM4, ASM5, ASM6, ASM7, ASM8, ASM9, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, H_GETFIELD, H_GETSTATIC, H_INVOKEINTERFACE, H_INVOKESPECIAL, H_INVOKESTATIC, H_INVOKEVIRTUAL, H_NEWINVOKESPECIAL, H_PUTFIELD, H_PUTSTATIC, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SOURCE_DEPRECATED, SOURCE_MASK, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V_PREVIEW, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V26, V9 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Class<?> getClass(org.objectweb.asm.Type t) protected org.objectweb.asm.TypegetSuperClass(org.objectweb.asm.Type t) protected booleanisAssignableFrom(org.objectweb.asm.Type t, org.objectweb.asm.Type u) protected booleanisInterface(org.objectweb.asm.Type t) Methods inherited from class org.objectweb.asm.tree.analysis.SimpleVerifier
getElementValue, isArrayValue, isSubTypeOf, merge, newValue, setClassLoaderMethods inherited from class org.objectweb.asm.tree.analysis.BasicVerifier
binaryOperation, copyOperation, naryOperation, returnOperation, ternaryOperation, unaryOperationMethods inherited from class org.objectweb.asm.tree.analysis.BasicInterpreter
newOperationMethods inherited from class org.objectweb.asm.tree.analysis.Interpreter
newEmptyValue, newExceptionValue, newParameterValue, newReturnTypeValue
-
Field Details
-
repo
-
-
Constructor Details
-
SimpleVerifier
Constructs aSimpleVerifierobject.- Parameters:
repo- repository to use for deriving class details- Throws:
NullPointerException- if any argument isnull
-
-
Method Details
-
isInterface
protected boolean isInterface(org.objectweb.asm.Type t) - Overrides:
isInterfacein classorg.objectweb.asm.tree.analysis.SimpleVerifier
-
getSuperClass
protected org.objectweb.asm.Type getSuperClass(org.objectweb.asm.Type t) - Overrides:
getSuperClassin classorg.objectweb.asm.tree.analysis.SimpleVerifier
-
isAssignableFrom
protected boolean isAssignableFrom(org.objectweb.asm.Type t, org.objectweb.asm.Type u) - Overrides:
isAssignableFromin classorg.objectweb.asm.tree.analysis.SimpleVerifier
-
getClass
- Overrides:
getClassin classorg.objectweb.asm.tree.analysis.SimpleVerifier
-