Groovy 2.2.0

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
def 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 Object
wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll
 

Method Detail

OptimizingStatementWriter

public def OptimizingStatementWriter(WriterController controller)


setNodeMeta

public static void setNodeMeta(TypeChooser chooser, ClassNode classNode)


writeBlockStatement

@Override
public void writeBlockStatement(BlockStatement statement)


writeDoWhileLoop

@OverridefastPathBlocked = true;
public void writeDoWhileLoop(DoWhileStatement statement)


writeExpressionStatement

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


writeForInLoop

@OverridefastPathBlocked = true;
protected void writeForInLoop(ForStatement statement)


writeForLoopWithClosureList

@OverridefastPathBlocked = true;
protected void writeForLoopWithClosureList(ForStatement statement)


writeIfElse

@OverridefastPathBlocked = 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

@OverridefastPathBlocked = oldFastPathBlock;
public void writeReturn(ReturnStatement statement)


writeWhileLoop

@OverridefastPathBlocked = true;
public void writeWhileLoop(WhileStatement statement)


 

Copyright © 2003-2013 The Codehaus. All rights reserved.