public class InvocationWriter extends Object
Modifiers | Name | Description |
---|---|---|
static MethodCaller |
castToVargsArray |
|
protected WriterController |
controller |
|
static MethodCaller |
invokeClosureMethod |
|
static MethodCallerMultiAdapter |
invokeMethod |
|
static MethodCallerMultiAdapter |
invokeMethodOnCurrent |
|
static MethodCallerMultiAdapter |
invokeMethodOnSuper |
|
static MethodCallerMultiAdapter |
invokeStaticMethod |
Constructor and description |
---|
InvocationWriter(WriterController controller) |
Type Params | Return Type | Name and description |
---|---|---|
|
public void |
castNonPrimitiveToBool(ClassNode last) |
|
public void |
castToNonPrimitiveIfNecessary(ClassNode sourceType, ClassNode targetType) Converts sourceType to a non primitive by using Groovy casting. |
|
public void |
coerce(ClassNode from, ClassNode target) |
|
protected void |
finnishConstructorCall(ConstructorNode cn, String ownerDescriptor, int argsToRemove) |
|
protected String |
getMethodName(Expression message) |
|
protected void |
loadArguments(List<Expression> arguments, Parameter[] parameters) |
|
public static ArgumentListExpression |
makeArgumentList(Expression arguments) |
|
protected boolean |
makeCachedCall(Expression origin, ClassExpression sender, Expression receiver, Expression message, Expression arguments, MethodCallerMultiAdapter adapter, boolean safe, boolean spreadSafe, boolean implicitThis, boolean containsSpreadExpression) |
|
public void |
makeCall(Expression origin, Expression receiver, Expression message, Expression arguments, MethodCallerMultiAdapter adapter, boolean safe, boolean spreadSafe, boolean implicitThis) |
|
protected void |
makeCall(Expression origin, ClassExpression sender, Expression receiver, Expression message, Expression arguments, MethodCallerMultiAdapter adapter, boolean safe, boolean spreadSafe, boolean implicitThis) |
|
protected boolean |
makeClassForNameCall(Expression origin, Expression receiver, Expression message, Expression arguments) if Class.forName(x) is recognized, make a direct method call |
|
protected boolean |
makeDirectCall(Expression origin, Expression receiver, Expression message, Expression arguments, MethodCallerMultiAdapter adapter, boolean implicitThis, boolean containsSpreadExpression) |
|
public final void |
makeSingleArgumentCall(Expression receiver, String message, Expression arguments) |
|
public void |
makeSingleArgumentCall(Expression receiver, String message, Expression arguments, boolean safe) |
|
protected void |
makeUncachedCall(Expression origin, ClassExpression sender, Expression receiver, Expression message, Expression arguments, MethodCallerMultiAdapter adapter, boolean safe, boolean spreadSafe, boolean implicitThis, boolean containsSpreadExpression) |
|
protected String |
prepareConstructorCall(ConstructorNode cn) |
|
public void |
visitVariableExpression(VariableExpression vexp) |
|
protected boolean |
writeAICCall(ConstructorCallExpression call) |
|
protected boolean |
writeDirectMethodCall(MethodNode target, boolean implicitThis, Expression receiver, TupleExpression args) |
|
public void |
writeInvokeConstructor(ConstructorCallExpression call) |
|
public void |
writeInvokeMethod(MethodCallExpression call) |
|
public void |
writeInvokeStaticMethod(StaticMethodCallExpression call) |
|
protected void |
writeNormalConstructorCall(ConstructorCallExpression call) |
|
public void |
writeSpecialConstructorCall(ConstructorCallExpression call) |
Converts sourceType to a non primitive by using Groovy casting. sourceType might be a primitive This might be done using SBA#castToType
if Class.forName(x) is recognized, make a direct method call
Copyright © 2003-2022 The Apache Software Foundation. All rights reserved.