Top Description Fields Constructors Methods
org.codehaus.groovy.classgen.asm

public Class CallSiteWriter

extends Object
Class Inheritance
Known Direct Subclasses
org.codehaus.groovy.classgen.asm.indy.IndyCallSiteWriter, org.codehaus.groovy.classgen.asm.sc.StaticTypesCallSiteWriter
Imports
org.codehaus.groovy.ast.ClassHelper, .ClassNode, .InterfaceHelperClassNode, org.codehaus.groovy.ast.expr.ArgumentListExpression, .CastExpression, .ClassExpression, .Expression, .MethodCallExpression, .PropertyExpression, .TupleExpression, org.codehaus.groovy.classgen.AsmClassGenerator, org.codehaus.groovy.runtime.callsite.CallSite, org.objectweb.asm.Label, .MethodVisitor, java.util.ArrayList, .LinkedList, .List

This class represents non public API used by AsmClassGenerator. Don't use this class in your code

Field Summary

Modifier and TypeField and Description
private static final String
private static final ClassNode
private static final String
private static final String
private static final String
private int
private final List<String>
public static final String
private final WriterController
private static final String
private static final String
private static final String
private static final String
private static final String
private static final int
private static final int
private static final String
private static final String
private static String[]
private static final int

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private int
public void
public void
private void
private void
public List<String>
private static String
getCreateArraySignature(int numberOfArguments)

private static String
getDescForParamNum(int numberOfArguments)

public boolean
private void
invokeSafe(boolean safe, String unsafeMethod, String safeMethod)

public void
makeCallSite(Expression receiver, String message, Expression arguments, boolean safe, boolean implicitThis, boolean callCurrent, boolean callStatic)

public void
public void
makeGetPropertySite(Expression receiver, String methodName, boolean safe, boolean implicitThis)

public void
makeGroovyObjectGetPropertySite(Expression receiver, String methodName, boolean safe, boolean implicitThis)

public final void
makeSingleArgumentCall(Expression receiver, String message, Expression arguments)

public void
makeSingleArgumentCall(Expression receiver, String message, Expression arguments, boolean safe)

public void
public void
private void
prepareSiteAndReceiver(Expression receiver, String methodName, boolean implicitThis)

protected void
prepareSiteAndReceiver(Expression receiver, String methodName, boolean implicitThis, boolean lhs)

protected void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

CALLSITE_ARRAY_CLASSback to summary
private static final String CALLSITE_ARRAY_CLASS
CALLSITE_ARRAY_TYPEback to summary
private static final ClassNode CALLSITE_ARRAY_TYPE
CALLSITE_CLASSback to summary
private static final String CALLSITE_CLASS
CALLSITE_DESCback to summary
private static final String CALLSITE_DESC
CALLSITE_FIELDback to summary
private static final String CALLSITE_FIELD
callSiteArrayVarIndexback to summary
private int callSiteArrayVarIndex
callSitesback to summary
private final List<String> callSites
CONSTRUCTORback to summary
public static final String CONSTRUCTOR
controllerback to summary
private final WriterController controller
CREATE_CSA_METHODback to summary
private static final String CREATE_CSA_METHOD
GET_CALLSITE_DESCback to summary
private static final String GET_CALLSITE_DESC
GET_CALLSITE_METHODback to summary
private static final String GET_CALLSITE_METHOD
GET_CALLSITEARRAY_DESCback to summary
private static final String GET_CALLSITEARRAY_DESC
METHOD_OO_DESCback to summary
private static final String METHOD_OO_DESC
MOD_PRIVSSback to summary
private static final int MOD_PRIVSS
MOD_PUBSSback to summary
private static final int MOD_PUBSS
REF_CLASSback to summary
private static final String REF_CLASS
REF_DESCback to summary
private static final String REF_DESC
sigback to summary
private static String[] sig
SIG_ARRAY_LENGTHback to summary
private static final int SIG_ARRAY_LENGTH

Constructor Detail

CallSiteWriterback to summary
public CallSiteWriter(WriterController wc)

Method Detail

allocateIndexback to summary
private int allocateIndex(String name)
fallbackAttributeOrPropertySiteback to summary
public void fallbackAttributeOrPropertySite(PropertyExpression expression, Expression objectExpression, String name, MethodCallerMultiAdapter adapter)
generateCallSiteArrayback to summary
public void generateCallSiteArray()
generateCreateCallSiteArrayback to summary
private void generateCreateCallSiteArray()
generateGetCallSiteArrayback to summary
private void generateGetCallSiteArray()
getCallSitesback to summary
public List<String> getCallSites()
getCreateArraySignatureback to summary
private static String getCreateArraySignature(int numberOfArguments)
getDescForParamNumback to summary
private static String getDescForParamNum(int numberOfArguments)
hasCallSiteUseback to summary
public boolean hasCallSiteUse()
invokeSafeback to summary
private void invokeSafe(boolean safe, String unsafeMethod, String safeMethod)
makeCallSiteback to summary
public void makeCallSite(Expression receiver, String message, Expression arguments, boolean safe, boolean implicitThis, boolean callCurrent, boolean callStatic)
makeCallSiteArrayInitializerback to summary
public void makeCallSiteArrayInitializer()
makeGetPropertySiteback to summary
public void makeGetPropertySite(Expression receiver, String methodName, boolean safe, boolean implicitThis)
makeGroovyObjectGetPropertySiteback to summary
public void makeGroovyObjectGetPropertySite(Expression receiver, String methodName, boolean safe, boolean implicitThis)
makeSingleArgumentCallback to summary
public final void makeSingleArgumentCall(Expression receiver, String message, Expression arguments)
makeSingleArgumentCallback to summary
public void makeSingleArgumentCall(Expression receiver, String message, Expression arguments, boolean safe)
makeSiteEntryback to summary
public void makeSiteEntry()
prepareCallSiteback to summary
public void prepareCallSite(String message)
prepareSiteAndReceiverback to summary
private void prepareSiteAndReceiver(Expression receiver, String methodName, boolean implicitThis)
prepareSiteAndReceiverback to summary
protected void prepareSiteAndReceiver(Expression receiver, String methodName, boolean implicitThis, boolean lhs)
visitBoxedArgumentback to summary
protected void visitBoxedArgument(Expression exp)