public class InvokeDynamicClassInstrumentor extends ClassInstrumentor
ClassInstrumentor.Decorator| Constructor and Description | 
|---|
| InvokeDynamicClassInstrumentor(ClassInstrumentor.Decorator decorator) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | addDirectCallConstructor(MutableClass mutableClass) | 
| protected void | generateClassHandlerCall(MutableClass mutableClass,
                        org.objectweb.asm.tree.MethodNode originalMethod,
                        String originalMethodName,
                        org.robolectric.internal.bytecode.RobolectricGeneratorAdapter generator) | 
| protected void | interceptInvokeVirtualMethod(MutableClass mutableClass,
                            ListIterator<org.objectweb.asm.tree.AbstractInsnNode> instructions,
                            org.objectweb.asm.tree.MethodInsnNode targetMethod)Decides to call through the appropriate method to intercept the method with an INVOKEVIRTUAL Opcode, depending if the invokedynamic bytecode instruction is available (Java 7+). | 
| protected void | writeCallToInitializing(MutableClass mutableClass,
                       org.robolectric.internal.bytecode.RobolectricGeneratorAdapter generator) | 
analyzeClass, instrument, instrument, instrumentNormalMethod, makeMethodPublicpublic InvokeDynamicClassInstrumentor(ClassInstrumentor.Decorator decorator)
protected void addDirectCallConstructor(MutableClass mutableClass)
addDirectCallConstructor in class ClassInstrumentorprotected void writeCallToInitializing(MutableClass mutableClass, org.robolectric.internal.bytecode.RobolectricGeneratorAdapter generator)
writeCallToInitializing in class ClassInstrumentorprotected void generateClassHandlerCall(MutableClass mutableClass, org.objectweb.asm.tree.MethodNode originalMethod, String originalMethodName, org.robolectric.internal.bytecode.RobolectricGeneratorAdapter generator)
generateClassHandlerCall in class ClassInstrumentorprotected void interceptInvokeVirtualMethod(MutableClass mutableClass, ListIterator<org.objectweb.asm.tree.AbstractInsnNode> instructions, org.objectweb.asm.tree.MethodInsnNode targetMethod)
ClassInstrumentorDecides to call through the appropriate method to intercept the method with an INVOKEVIRTUAL Opcode, depending if the invokedynamic bytecode instruction is available (Java 7+).
interceptInvokeVirtualMethod in class ClassInstrumentor