public class TraitTripleProxyClassBuilderImpl extends Object implements TraitProxyClassBuilder, Serializable
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MANDATED, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASM4, ASM5, 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, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8
Constructor and Description |
---|
TraitTripleProxyClassBuilderImpl() |
Modifier and Type | Method and Description |
---|---|
byte[] |
buildClass(ClassDefinition core,
ClassLoader classLoader) |
protected void |
buildCommonMethods(org.mvel2.asm.ClassWriter cw,
String proxy) |
protected int |
buildConstructorCore(org.mvel2.asm.ClassWriter cw,
org.mvel2.asm.MethodVisitor mv,
String internalProxy,
String internalWrapper,
String internalCore,
String descrCore,
org.drools.core.factmodel.traits.TraitBuilderUtil.MixinInfo mixinInfo) |
void |
buildEqualityMethods(org.mvel2.asm.ClassVisitor cw,
String proxy,
String core) |
protected void |
buildExtendedMethods(org.mvel2.asm.ClassWriter cw,
ClassDefinition trait,
ClassDefinition core,
BitSet mask) |
protected void |
buildHardGetter(org.mvel2.asm.ClassVisitor cw,
FieldDefinition field,
String masterName,
ClassDefinition proxy,
ClassDefinition core) |
protected void |
buildHardGetter(org.mvel2.asm.ClassVisitor cw,
FieldDefinition field,
String masterName,
ClassDefinition proxy,
ClassDefinition core,
String getterName,
boolean protect) |
protected void |
buildHardSetter(org.mvel2.asm.ClassVisitor cw,
FieldDefinition field,
String masterName,
ClassDefinition trait,
ClassDefinition core) |
protected void |
buildHardSetter(org.mvel2.asm.ClassVisitor cw,
FieldDefinition field,
String masterName,
ClassDefinition trait,
ClassDefinition core,
String setterName,
boolean protect) |
void |
buildKeyedEqualityMethods(org.mvel2.asm.ClassVisitor cw,
ClassDefinition trait,
String proxy,
String core) |
protected void |
buildKeyedEquals(org.mvel2.asm.ClassVisitor cw,
ClassDefinition classDef,
String proxyType) |
protected void |
buildKeyedHashCode(org.mvel2.asm.ClassVisitor cw,
ClassDefinition classDef,
String proxyType) |
protected void |
buildProxyAccessor(BitSet mask,
org.mvel2.asm.ClassWriter cw,
String masterName,
ClassDefinition core,
org.drools.core.factmodel.traits.TraitBuilderUtil.MixinInfo mixinInfo,
FieldDefinition field,
boolean isSoftField) |
protected void |
buildProxyAccessors(BitSet mask,
org.mvel2.asm.ClassWriter cw,
String masterName,
ClassDefinition core,
org.drools.core.factmodel.traits.TraitBuilderUtil.MixinInfo mixinInfo) |
protected void |
buildShadowMethods(org.mvel2.asm.ClassWriter cw,
ClassDefinition trait,
ClassDefinition core,
BitSet mask) |
protected void |
buildSoftGetter(org.mvel2.asm.ClassVisitor cw,
FieldDefinition field,
String proxy,
ClassDefinition trait,
ClassDefinition core) |
protected void |
buildSoftGetter(org.mvel2.asm.ClassVisitor cw,
FieldDefinition field,
String proxy,
ClassDefinition trait,
ClassDefinition core,
String getterName,
boolean protect) |
protected void |
buildSoftSetter(org.mvel2.asm.ClassVisitor cw,
FieldDefinition field,
String proxy,
ClassDefinition trait,
ClassDefinition core) |
protected void |
buildSoftSetter(org.mvel2.asm.ClassVisitor cw,
FieldDefinition field,
String proxy,
ClassDefinition trait,
ClassDefinition core,
String setterName,
boolean protect) |
protected void |
buildSynchFields(org.mvel2.asm.ClassWriter cw,
String proxyName,
ClassDefinition trait,
ClassDefinition core,
BitSet mask) |
protected ClassDefinition |
getTrait() |
void |
init(ClassDefinition trait,
Class<?> baseClass,
TraitRegistry traitRegistry) |
protected void |
initFields(org.mvel2.asm.MethodVisitor mv,
String internalProxy) |
protected void |
shedField(org.mvel2.asm.MethodVisitor mv,
FieldDefinition fld,
String proxyName,
ClassDefinition trait,
ClassDefinition core,
boolean hardField,
int j) |
protected void |
synchField(org.mvel2.asm.MethodVisitor mv,
FieldDefinition fld,
String proxyName) |
protected void |
synchFieldLogical(org.mvel2.asm.MethodVisitor mv,
FieldDefinition fld,
String proxyName,
ClassDefinition trait,
ClassDefinition core,
boolean hardField,
int j) |
protected ClassDefinition getTrait()
public void init(ClassDefinition trait, Class<?> baseClass, TraitRegistry traitRegistry)
init
in interface TraitProxyClassBuilder
public byte[] buildClass(ClassDefinition core, ClassLoader classLoader) throws IOException, SecurityException, IllegalArgumentException, ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException, NoSuchFieldException
protected void buildShadowMethods(org.mvel2.asm.ClassWriter cw, ClassDefinition trait, ClassDefinition core, BitSet mask)
protected int buildConstructorCore(org.mvel2.asm.ClassWriter cw, org.mvel2.asm.MethodVisitor mv, String internalProxy, String internalWrapper, String internalCore, String descrCore, org.drools.core.factmodel.traits.TraitBuilderUtil.MixinInfo mixinInfo)
protected void initFields(org.mvel2.asm.MethodVisitor mv, String internalProxy)
protected void buildProxyAccessors(BitSet mask, org.mvel2.asm.ClassWriter cw, String masterName, ClassDefinition core, org.drools.core.factmodel.traits.TraitBuilderUtil.MixinInfo mixinInfo)
protected void buildProxyAccessor(BitSet mask, org.mvel2.asm.ClassWriter cw, String masterName, ClassDefinition core, org.drools.core.factmodel.traits.TraitBuilderUtil.MixinInfo mixinInfo, FieldDefinition field, boolean isSoftField)
protected void buildHardGetter(org.mvel2.asm.ClassVisitor cw, FieldDefinition field, String masterName, ClassDefinition proxy, ClassDefinition core)
protected void buildHardGetter(org.mvel2.asm.ClassVisitor cw, FieldDefinition field, String masterName, ClassDefinition proxy, ClassDefinition core, String getterName, boolean protect)
protected void buildHardSetter(org.mvel2.asm.ClassVisitor cw, FieldDefinition field, String masterName, ClassDefinition trait, ClassDefinition core)
protected void buildHardSetter(org.mvel2.asm.ClassVisitor cw, FieldDefinition field, String masterName, ClassDefinition trait, ClassDefinition core, String setterName, boolean protect)
protected void buildSoftSetter(org.mvel2.asm.ClassVisitor cw, FieldDefinition field, String proxy, ClassDefinition trait, ClassDefinition core)
protected void buildSoftSetter(org.mvel2.asm.ClassVisitor cw, FieldDefinition field, String proxy, ClassDefinition trait, ClassDefinition core, String setterName, boolean protect)
protected void buildSoftGetter(org.mvel2.asm.ClassVisitor cw, FieldDefinition field, String proxy, ClassDefinition trait, ClassDefinition core)
protected void buildSoftGetter(org.mvel2.asm.ClassVisitor cw, FieldDefinition field, String proxy, ClassDefinition trait, ClassDefinition core, String getterName, boolean protect)
public void buildEqualityMethods(org.mvel2.asm.ClassVisitor cw, String proxy, String core)
public void buildKeyedEqualityMethods(org.mvel2.asm.ClassVisitor cw, ClassDefinition trait, String proxy, String core)
protected void buildKeyedEquals(org.mvel2.asm.ClassVisitor cw, ClassDefinition classDef, String proxyType)
protected void buildKeyedHashCode(org.mvel2.asm.ClassVisitor cw, ClassDefinition classDef, String proxyType)
protected void buildCommonMethods(org.mvel2.asm.ClassWriter cw, String proxy)
protected void buildExtendedMethods(org.mvel2.asm.ClassWriter cw, ClassDefinition trait, ClassDefinition core, BitSet mask)
protected void buildSynchFields(org.mvel2.asm.ClassWriter cw, String proxyName, ClassDefinition trait, ClassDefinition core, BitSet mask)
protected void synchField(org.mvel2.asm.MethodVisitor mv, FieldDefinition fld, String proxyName)
protected void synchFieldLogical(org.mvel2.asm.MethodVisitor mv, FieldDefinition fld, String proxyName, ClassDefinition trait, ClassDefinition core, boolean hardField, int j)
protected void shedField(org.mvel2.asm.MethodVisitor mv, FieldDefinition fld, String proxyName, ClassDefinition trait, ClassDefinition core, boolean hardField, int j)
Copyright © 2001–2018 JBoss by Red Hat. All rights reserved.