Groovy Documentation

## org.codehaus.groovy.classgen.asm
[Java] Class OptimizingStatementWriter

    java.lang.Object
      org.codehaus.groovy.classgen.asm.StatementWriter
          org.codehaus.groovy.classgen.asm.OptimizingStatementWriter

    public class OptimizingStatementWriter
    extends StatementWriter

A class to write out the optimized statements

Authors:
  Jochen "blackdrag" Theodorou

Nested Class Summary
`static class` | `OptimizingStatementWriter.ClassNodeSkip`
`static class` | `OptimizingStatementWriter.StatementMeta`

Method Summary
`java.lang.Object` | `OptimizingStatementWriter(WriterController controller)`
`static void` | `setNodeMeta(TypeChooser chooser, ClassNode classNode)`
`void` | `writeBlockStatement(BlockStatement statement)`
`void` | `writeDoWhileLoop(DoWhileStatement statement)`
`void` | `writeExpressionStatement(ExpressionStatement statement)`
`protected void` | `writeForInLoop(ForStatement statement)`
`protected void` | `writeForLoopWithClosureList(ForStatement statement)`
`void` | `writeIfElse(IfStatement statement)`
`protected void` | `writeIteratorHasNext(org.objectweb.asm.MethodVisitor mv)`
`protected void` | `writeIteratorNext(org.objectweb.asm.MethodVisitor mv)`
`void` | `writeReturn(ReturnStatement statement)`
`void` | `writeWhileLoop(WhileStatement statement)`

Methods inherited from class StatementWriter
writeAssert, writeBlockStatement, writeBreak, writeCaseStatement, writeContinue, writeDoWhileLoop, writeExpressionStatement, writeForInLoop, writeForLoopWithClosureList, writeForStatement, writeIfElse, writeIteratorHasNext, writeIteratorNext, writeReturn, writeStatementLabel, writeSwitch, writeSynchronized, writeThrow, writeTryCatchFinally, writeWhileLoop

Methods inherited from class java.lang.Object
java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()

Method Detail

### OptimizingStatementWriter

    public java.lang.Object OptimizingStatementWriter(WriterController controller)

### setNodeMeta

    public static void setNodeMeta(TypeChooser chooser, ClassNode classNode)

### writeBlockStatement

    public void writeBlockStatement(BlockStatement statement)

### writeDoWhileLoop

    fastPathBlocked = true;
    public void writeDoWhileLoop(DoWhileStatement statement)

### writeExpressionStatement

    // (1) no fast path possible, so just do super
    public void writeExpressionStatement(ExpressionStatement statement)

### writeForInLoop

    fastPathBlocked = true;
    protected void writeForInLoop(ForStatement statement)

### writeForLoopWithClosureList

    fastPathBlocked = true;
    protected void writeForLoopWithClosureList(ForStatement statement)

### writeIfElse

    fastPathBlocked = true;
    public void writeIfElse(IfStatement statement)

### writeIteratorHasNext

    @Override
    protected void writeIteratorHasNext(org.objectweb.asm.MethodVisitor mv)

### writeIteratorNext

    @Override
    protected void writeIteratorNext(org.objectweb.asm.MethodVisitor mv)

### writeReturn

    fastPathBlocked = oldFastPathBlock;
    public void writeReturn(ReturnStatement statement)

### writeWhileLoop

    fastPathBlocked = true;
    public void writeWhileLoop(WhileStatement statement)

Groovy Documentation