Package org.codehaus.groovy.classgen.asm
Class ClosureWriter
java.lang.Object
org.codehaus.groovy.classgen.asm.ClosureWriter
- Direct Known Subclasses:
 LambdaWriter,StaticTypesClosureWriter
public class ClosureWriter
extends java.lang.Object
- 
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classClosureWriter.CorrectAccessedVariableVisitorprotected static interfaceClosureWriter.UseExistingReference - 
Field Summary
Fields Modifier and Type Field Description protected WriterControllercontrollerstatic java.lang.StringOUTER_INSTANCEstatic java.lang.StringTHIS_OBJECT - 
Constructor Summary
Constructors Constructor Description ClosureWriter(WriterController controller) - 
Method Summary
Modifier and Type Method Description protected ConstructorNodeaddConstructor(ClosureExpression expression, Parameter[] localVariableParams, InnerClassNode answer, BlockStatement block)protected voidaddFieldsAndGettersForLocalVariables(InnerClassNode closureClass, Parameter[] localVariableParams)booleanaddGeneratedClosureConstructorCall(ConstructorCallExpression call)protected BlockStatementcreateBlockStatementForConstructor(ClosureExpression expression, ClassNode outerClass, ClassNode thisClassNode)protected ClassNodecreateClosureClass(ClosureExpression expression, int modifiers)protected Parameter[]getClosureSharedVariables(ClosureExpression expression)ClassNodegetOrAddClosureClass(ClosureExpression expression, int modifiers)static voidloadReference(java.lang.String name, WriterController controller)protected voidloadThis()protected static voidremoveInitialValues(Parameter[] params)voidwriteClosure(ClosureExpression expression)Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
- 
Field Details
- 
OUTER_INSTANCE
public static final java.lang.String OUTER_INSTANCE- See Also:
 - Constant Field Values
 
 - 
THIS_OBJECT
public static final java.lang.String THIS_OBJECT- See Also:
 - Constant Field Values
 
 - 
controller
 
 - 
 - 
Constructor Details
- 
ClosureWriter
 
 - 
 - 
Method Details
- 
writeClosure
 - 
loadReference
 - 
getOrAddClosureClass
 - 
createClosureClass
 - 
addConstructor
protected ConstructorNode addConstructor(ClosureExpression expression, Parameter[] localVariableParams, InnerClassNode answer, BlockStatement block) - 
addFieldsAndGettersForLocalVariables
protected void addFieldsAndGettersForLocalVariables(InnerClassNode closureClass, Parameter[] localVariableParams) - 
createBlockStatementForConstructor
protected BlockStatement createBlockStatementForConstructor(ClosureExpression expression, ClassNode outerClass, ClassNode thisClassNode) - 
removeInitialValues
 - 
addGeneratedClosureConstructorCall
 - 
loadThis
protected void loadThis() 
 -