public abstract class ClassSkeletonImplement extends BaseASM
Represents a class generation, where a class implements interface.
| Modifier and Type | Field and Description |
|---|---|
protected org.objectweb.asm.Type |
implType |
protected org.objectweb.asm.Type |
interfaceType |
protected org.objectweb.asm.Type |
superType |
internal, particleType, particleTypeBlock, particleTypeBlockMotion, particleTypeColorable, particleTypeDust, particleTypeDustTransition, particleTypeItemMotion, particleTypeMotion, particleTypeNote, particleTypeRedstone, particleTypeVibration, playerConnType, playerPredicateType, serverConnTypeAALOAD, 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_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, ASM4, ASM5, ASM6, ASM7, ASM8_EXPERIMENTAL, 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, V9| Constructor and Description |
|---|
ClassSkeletonImplement(InternalResolver resolver,
org.objectweb.asm.Type interfaceType) |
| Modifier and Type | Method and Description |
|---|---|
void |
defineClass()
Generates class and defines it to class loader.
|
org.objectweb.asm.Type |
getImplType() |
org.objectweb.asm.Type |
getInterfaceType() |
org.objectweb.asm.Type |
getSuperType() |
protected abstract org.objectweb.asm.Type |
getTypeImpl(org.objectweb.asm.Type superType)
Gets a
Type object representing an implementation
of class represented by parameter Type object. |
protected abstract void |
writeConstructor(org.objectweb.asm.ClassWriter cw)
Writes constructor code to a class.
|
protected abstract void |
writeFields(org.objectweb.asm.ClassWriter cw)
Writes fields necessary to properly represent certain particle.
|
protected abstract void |
writeMethods(org.objectweb.asm.ClassWriter cw)
Writes all necessary methods to a class.
|
classNameNMS, classNameOBC, descNMS, descOBC, descOther, getTypeImpl, internalNMS, internalOBC, internalOtherprotected org.objectweb.asm.Type implType
protected org.objectweb.asm.Type superType
protected org.objectweb.asm.Type interfaceType
public ClassSkeletonImplement(InternalResolver resolver, org.objectweb.asm.Type interfaceType)
protected abstract org.objectweb.asm.Type getTypeImpl(org.objectweb.asm.Type superType)
Gets a Type object representing an implementation
of class represented by parameter Type object.
superType - a Type object associated
with base class.Type object representing class
extending or implementing parameter's class represented
by Type object.public void defineClass()
Generates class and defines it to class loader.
protected abstract void writeFields(org.objectweb.asm.ClassWriter cw)
Writes fields necessary to properly represent certain particle.
cw - a ClassWriter on which fields writing should happen.protected abstract void writeConstructor(org.objectweb.asm.ClassWriter cw)
Writes constructor code to a class.
cw - a ClassWriter on which constructor
writing should happen.protected abstract void writeMethods(org.objectweb.asm.ClassWriter cw)
Writes all necessary methods to a class.
cw - a ClassWriter on which constructor
writing should happen.public org.objectweb.asm.Type getImplType()
public org.objectweb.asm.Type getSuperType()
public org.objectweb.asm.Type getInterfaceType()
Copyright © 2021. All Rights Reserved.