Class InvokeDynamicWriter
- java.lang.Object
 - 
- org.codehaus.groovy.classgen.asm.InvocationWriter
 - 
- org.codehaus.groovy.classgen.asm.indy.InvokeDynamicWriter
 
 
 
- 
public class InvokeDynamicWriter extends InvocationWriter
This Writer is used to generate the call invocation byte codes for usage by invokedynamic. 
- 
- 
Field Summary
- 
Fields inherited from class org.codehaus.groovy.classgen.asm.InvocationWriter
castToVargsArray, invokeClosureMethod, invokeMethod, invokeMethodOnCurrent, invokeMethodOnSuper, invokeStaticMethod 
 - 
 
- 
Constructor Summary
Constructors Constructor Description InvokeDynamicWriter(WriterController wc) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcastNonPrimitiveToBool(ClassNode sourceType)voidcastToNonPrimitiveIfNecessary(ClassNode sourceType, ClassNode targetType)This converts sourceType to a non primitive by using Groovy casting.voidcoerce(ClassNode from, ClassNode target)protected booleanmakeCachedCall(Expression origin, ClassExpression sender, Expression receiver, Expression message, Expression arguments, MethodCallerMultiAdapter adapter, boolean safe, boolean spreadSafe, boolean implicitThis, boolean containsSpreadExpression)voidmakeSingleArgumentCall(Expression receiver, String message, Expression arguments)protected voidwriteGetProperty(Expression receiver, String propertyName, boolean safe, boolean implicitThis, boolean groovyObject)protected voidwriteNormalConstructorCall(ConstructorCallExpression call)- 
Methods inherited from class org.codehaus.groovy.classgen.asm.InvocationWriter
finnishConstructorCall, getMethodName, loadArguments, makeArgumentList, makeCall, makeCall, makeClassForNameCall, makeDirectCall, makeUncachedCall, prepareConstructorCall, writeAICCall, writeDirectMethodCall, writeInvokeConstructor, writeInvokeMethod, writeInvokeStaticMethod, writeSpecialConstructorCall 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
InvokeDynamicWriter
public InvokeDynamicWriter(WriterController wc)
 
 - 
 
- 
Method Detail
- 
makeCachedCall
protected boolean makeCachedCall(Expression origin, ClassExpression sender, Expression receiver, Expression message, Expression arguments, MethodCallerMultiAdapter adapter, boolean safe, boolean spreadSafe, boolean implicitThis, boolean containsSpreadExpression)
- Overrides:
 makeCachedCallin classInvocationWriter
 
- 
makeSingleArgumentCall
public void makeSingleArgumentCall(Expression receiver, String message, Expression arguments)
- Overrides:
 makeSingleArgumentCallin classInvocationWriter
 
- 
writeGetProperty
protected void writeGetProperty(Expression receiver, String propertyName, boolean safe, boolean implicitThis, boolean groovyObject)
 
- 
writeNormalConstructorCall
protected void writeNormalConstructorCall(ConstructorCallExpression call)
- Overrides:
 writeNormalConstructorCallin classInvocationWriter
 
- 
coerce
public void coerce(ClassNode from, ClassNode target)
- Overrides:
 coercein classInvocationWriter
 
- 
castToNonPrimitiveIfNecessary
public void castToNonPrimitiveIfNecessary(ClassNode sourceType, ClassNode targetType)
Description copied from class:InvocationWriterThis converts sourceType to a non primitive by using Groovy casting. sourceType might be a primitive This might be done using SBA#castToType- Overrides:
 castToNonPrimitiveIfNecessaryin classInvocationWriter
 
- 
castNonPrimitiveToBool
public void castNonPrimitiveToBool(ClassNode sourceType)
- Overrides:
 castNonPrimitiveToBoolin classInvocationWriter
 
 - 
 
 -