[Java] Class InvokeDynamicWriter

  • org.codehaus.groovy.classgen.asm.indy.InvokeDynamicWriter

This Writer is used to generate the call invocation byte codes for usage by invokedynamic.

Inherited fields
Fields inherited from class Fields
class InvocationWriter castToVargsArray, invokeClosureMethod, invokeMethod, invokeMethodOnCurrent, invokeMethodOnSuper, invokeStaticMethod

Constructor Summary

Constructors
Constructor and description
InvokeDynamicWriter (WriterController wc)

Methods Summary

Methods
Type Params Return Type Name and description
void castNonPrimitiveToBool(ClassNode sourceType)
void castToNonPrimitiveIfNecessary(ClassNode sourceType, ClassNode targetType)
void coerce(ClassNode from, ClassNode target)
protected boolean makeCachedCall(Expression origin, ClassExpression sender, Expression receiver, Expression message, Expression arguments, MethodCallerMultiAdapter adapter, boolean safe, boolean spreadSafe, boolean implicitThis, boolean containsSpreadExpression)
void makeSingleArgumentCall(Expression receiver, String message, Expression arguments)
protected void writeGetProperty(Expression receiver, String propertyName, boolean safe, boolean implicitThis, boolean groovyObject)
protected void writeNormalConstructorCall(ConstructorCallExpression call)

Inherited Methods Summary

Inherited Methods
Methods inherited from class Name
class InvocationWriter castNonPrimitiveToBool, castToNonPrimitiveIfNecessary, coerce, finnishConstructorCall, getMethodName, loadArguments, makeArgumentList, makeCachedCall, makeCall, makeCall, makeClassForNameCall, makeDirectCall, makeSingleArgumentCall, makeUncachedCall, prepareConstructorCall, writeAICCall, writeDirectMethodCall, writeInvokeConstructor, writeInvokeMethod, writeInvokeStaticMethod, writeNormalConstructorCall, writeSpecialConstructorCall

Constructor Detail

public InvokeDynamicWriter(WriterController wc)

Method Detail

@Override public void castNonPrimitiveToBool(ClassNode sourceType)

@Override public void castToNonPrimitiveIfNecessary(ClassNode sourceType, ClassNode targetType)

@Override public void coerce(ClassNode from, ClassNode target)

@Override protected boolean makeCachedCall(Expression origin, ClassExpression sender, Expression receiver, Expression message, Expression arguments, MethodCallerMultiAdapter adapter, boolean safe, boolean spreadSafe, boolean implicitThis, boolean containsSpreadExpression)

@Override public void makeSingleArgumentCall(Expression receiver, String message, Expression arguments)

protected void writeGetProperty(Expression receiver, String propertyName, boolean safe, boolean implicitThis, boolean groovyObject)

@Override protected void writeNormalConstructorCall(ConstructorCallExpression call)

© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/2.5.14/html/gapi/org/codehaus/groovy/classgen/asm/indy/InvokeDynamicWriter.html