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

public Class StaticTypesClosureWriter

extends ClosureWriter
Class Inheritance
Imports
org.codehaus.groovy.GroovyBugError, org.codehaus.groovy.ast.ClassCodeVisitorSupport, .ClassHelper, .ClassNode, .MethodNode, .Parameter, org.codehaus.groovy.ast.expr.ArrayExpression, .ClosureExpression, .Expression, .MethodCallExpression, org.codehaus.groovy.classgen.asm.ClosureWriter, .WriterController, org.codehaus.groovy.control.SourceUnit, org.codehaus.groovy.transform.sc.StaticCompilationMetadataKeys, org.codehaus.groovy.transform.stc.StaticTypesMarker, org.objectweb.asm.Opcodes, java.util.Collections, .List

Writer responsible for generating closure classes in statically compiled mode.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class

Field Summary

Inherited from org.codehaus.groovy.classgen.asm.ClosureWriter:
controllerOUTER_INSTANCETHIS_OBJECT

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private static void
addGeneratedCallMethod(ClassNode closureClass, MethodNode doCallMethod, Expression expression, Parameter[] params)

protected ClassNode
private static void
createDirectCallMethod(final ClassNode closureClass, final MethodNode doCallMethod)

private static Expression
defaultArgument(final Parameter parameter)

Inherited from org.codehaus.groovy.classgen.asm.ClosureWriter:
addConstructoraddFieldsAndGettersForLocalVariablesaddGeneratedClosureConstructorCallcreateBlockStatementForConstructorgetClosureSharedVariablesgetOrAddClosureClassloadReferenceloadThisremoveInitialValueswriteClosure

Constructor Detail

StaticTypesClosureWriterback to summary
public StaticTypesClosureWriter(WriterController wc)

Method Detail

addGeneratedCallMethodback to summary
private static void addGeneratedCallMethod(ClassNode closureClass, MethodNode doCallMethod, Expression expression, Parameter[] params)
createClosureClassback to summary
protected ClassNode createClosureClass(final ClosureExpression expression, final int mods)

Overrides org.codehaus.groovy.classgen.asm.ClosureWriter.createClosureClass.

Annotations
@Override
createDirectCallMethodback to summary
private static void createDirectCallMethod(final ClassNode closureClass, final MethodNode doCallMethod)
defaultArgumentback to summary
private static Expression defaultArgument(final Parameter parameter)
org.codehaus.groovy.classgen.asm.sc back to summary

private final Class StaticTypesClosureWriter.MethodTargetCompletionVisitor

extends ClassCodeVisitorSupport
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final MethodNode

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
protected SourceUnit
public void
Inherited from org.codehaus.groovy.ast.ClassCodeVisitorSupport:
addErrorvisitAnnotationvisitAnnotationsvisitAssertStatementvisitBlockStatementvisitBreakStatementvisitCaseStatementvisitCatchStatementvisitClassvisitClassCodeContainervisitConstructorvisitConstructorOrMethodvisitContinueStatementvisitDeclarationExpressionvisitDoWhileLoopvisitExpressionStatementvisitFieldvisitForLoopvisitIfElsevisitImportsvisitMethodvisitObjectInitializerStatementsvisitPackagevisitPropertyvisitReturnStatementvisitStatementvisitSwitchvisitSynchronizedStatementvisitThrowStatementvisitTryCatchFinallyvisitWhileLoop

Field Detail

doCallMethodback to summary
private final MethodNode doCallMethod

Constructor Detail

MethodTargetCompletionVisitorback to summary
private MethodTargetCompletionVisitor(final MethodNode doCallMethod)

Method Detail

getSourceUnitback to summary
protected SourceUnit getSourceUnit()

Implements abstract org.codehaus.groovy.ast.ClassCodeVisitorSupport.getSourceUnit.

Annotations
@Override
visitMethodCallExpressionback to summary
public void visitMethodCallExpression(final MethodCallExpression call)

Overrides org.codehaus.groovy.ast.CodeVisitorSupport.visitMethodCallExpression.

Implements org.codehaus.groovy.ast.GroovyCodeVisitor.visitMethodCallExpression.

Annotations
@Override