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

public Class StaticTypesStatementWriter

extends StatementWriter
Class Inheritance
Imports
org.codehaus.groovy.ast.ClassHelper, .ClassNode, .Parameter, org.codehaus.groovy.ast.expr.Expression, .MethodCallExpression, org.codehaus.groovy.ast.stmt.BlockStatement, .ForStatement, org.codehaus.groovy.ast.tools.GeneralUtils, org.codehaus.groovy.classgen.AsmClassGenerator, org.codehaus.groovy.classgen.asm.BytecodeVariable, .CompileStack, .MethodCaller, .OperandStack, .StatementWriter, org.objectweb.asm.Label, .MethodVisitor, java.util.Enumeration

A class to write out the optimized statements.

Field Summary

Modifier and TypeField and Description
private static final ClassNode
private static final MethodCaller
private static final MethodCaller
private static final ClassNode
Inherited from org.codehaus.groovy.classgen.asm.StatementWriter:
controller

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private static void
loadFromArray(final MethodVisitor mv, final OperandStack os, final BytecodeVariable variable, final int array, final int index)

public void
private void
writeEnumerationBasedForEachLoop(final ForStatement loop, final Expression collectionExpression, final ClassNode collectionType)

protected void
private void
writeIteratorBasedForEachLoop(final ForStatement loop, final Expression collectionExpression, final ClassNode collectionType)

private void
writeOptimizedForEachLoop(final ForStatement loop, final Parameter loopVariable, final Expression arrayExpression, final ClassNode arrayType)

Inherited from org.codehaus.groovy.classgen.asm.StatementWriter:
writeAssertwriteBreakwriteContinuewriteDoWhileLoopwriteExpressionStatementwriteForInLoopControlAndBlockwriteForLoopWithClosureListwriteForStatementwriteIfElsewriteIteratorHasNextwriteIteratorNextwriteReturnwriteStatementLabelwriteSwitchwriteSynchronizedwriteThrowwriteTryCatchFinallywriteWhileLoop

Field Detail

ENUMERATION_CLASSNODEback to summary
private static final ClassNode ENUMERATION_CLASSNODE
ENUMERATION_HASMORE_METHODback to summary
private static final MethodCaller ENUMERATION_HASMORE_METHOD
ENUMERATION_NEXT_METHODback to summary
private static final MethodCaller ENUMERATION_NEXT_METHOD
ITERABLE_CLASSNODEback to summary
private static final ClassNode ITERABLE_CLASSNODE

Constructor Detail

StaticTypesStatementWriterback to summary
public StaticTypesStatementWriter(final StaticTypesWriterController controller)

Method Detail

loadFromArrayback to summary
private static void loadFromArray(final MethodVisitor mv, final OperandStack os, final BytecodeVariable variable, final int array, final int index)
writeBlockStatementback to summary
public void writeBlockStatement(final BlockStatement statement)

Overrides org.codehaus.groovy.classgen.asm.StatementWriter.writeBlockStatement.

Annotations
@Override
writeEnumerationBasedForEachLoopback to summary
private void writeEnumerationBasedForEachLoop(final ForStatement loop, final Expression collectionExpression, final ClassNode collectionType)
writeForInLoopback to summary
protected void writeForInLoop(final ForStatement loop)

Overrides org.codehaus.groovy.classgen.asm.StatementWriter.writeForInLoop.

Annotations
@Override
writeIteratorBasedForEachLoopback to summary
private void writeIteratorBasedForEachLoop(final ForStatement loop, final Expression collectionExpression, final ClassNode collectionType)
writeOptimizedForEachLoopback to summary
private void writeOptimizedForEachLoop(final ForStatement loop, final Parameter loopVariable, final Expression arrayExpression, final ClassNode arrayType)