Class MixinVerifier

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
org.spongepowered.asm.util.asm.MixinVerifier
All Implemented Interfaces:
org.objectweb.asm.Opcodes

public class MixinVerifier extends org.objectweb.asm.tree.analysis.SimpleVerifier
Verifier which handles class info lookups via ClassInfo
  • Field Summary

    Fields inherited from class org.objectweb.asm.tree.analysis.BasicInterpreter

    NULL_TYPE

    Fields inherited from class org.objectweb.asm.tree.analysis.Interpreter

    api

    Fields 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, V9
  • Constructor Summary

    Constructors
    Constructor
    Description
    MixinVerifier(int api, org.objectweb.asm.Type currentClass, org.objectweb.asm.Type currentSuperClass, List<org.objectweb.asm.Type> currentClassInterfaces, boolean isInterface)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected Class<?>
    getClass(org.objectweb.asm.Type type)
     
    protected boolean
    isAssignableFrom(org.objectweb.asm.Type type1, org.objectweb.asm.Type type2)
     
    protected boolean
    isInterface(org.objectweb.asm.Type type)
     
    protected boolean
    isSubTypeOf(org.objectweb.asm.tree.analysis.BasicValue value, org.objectweb.asm.tree.analysis.BasicValue expected)
     
    org.objectweb.asm.tree.analysis.BasicValue
    merge(org.objectweb.asm.tree.analysis.BasicValue value1, org.objectweb.asm.tree.analysis.BasicValue value2)
     

    Methods inherited from class org.objectweb.asm.tree.analysis.SimpleVerifier

    getElementValue, getSuperClass, isArrayValue, newValue, setClassLoader

    Methods inherited from class org.objectweb.asm.tree.analysis.BasicVerifier

    binaryOperation, copyOperation, naryOperation, returnOperation, ternaryOperation, unaryOperation

    Methods inherited from class org.objectweb.asm.tree.analysis.BasicInterpreter

    newOperation

    Methods inherited from class org.objectweb.asm.tree.analysis.Interpreter

    newEmptyValue, newExceptionValue, newParameterValue, newReturnTypeValue

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • MixinVerifier

      public MixinVerifier(int api, org.objectweb.asm.Type currentClass, org.objectweb.asm.Type currentSuperClass, List<org.objectweb.asm.Type> currentClassInterfaces, boolean isInterface)
  • Method Details

    • isInterface

      protected boolean isInterface(org.objectweb.asm.Type type)
      Overrides:
      isInterface in class org.objectweb.asm.tree.analysis.SimpleVerifier
    • isSubTypeOf

      protected boolean isSubTypeOf(org.objectweb.asm.tree.analysis.BasicValue value, org.objectweb.asm.tree.analysis.BasicValue expected)
      Overrides:
      isSubTypeOf in class org.objectweb.asm.tree.analysis.SimpleVerifier
    • isAssignableFrom

      protected boolean isAssignableFrom(org.objectweb.asm.Type type1, org.objectweb.asm.Type type2)
      Overrides:
      isAssignableFrom in class org.objectweb.asm.tree.analysis.SimpleVerifier
    • merge

      public org.objectweb.asm.tree.analysis.BasicValue merge(org.objectweb.asm.tree.analysis.BasicValue value1, org.objectweb.asm.tree.analysis.BasicValue value2)
      Overrides:
      merge in class org.objectweb.asm.tree.analysis.SimpleVerifier
    • getClass

      protected Class<?> getClass(org.objectweb.asm.Type type)
      Overrides:
      getClass in class org.objectweb.asm.tree.analysis.SimpleVerifier