Package org.codehaus.groovy.classgen.asm

# Class StatementWriter

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

Direct Known Subclasses:
  `OptimizingStatementWriter`, `StaticTypesStatementWriter`

public class StatementWriter extends Object

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final WriterController`
  `controller`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StatementWriter(WriterController controller)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `writeAssert(AssertStatement statement)`
  `void`
  `writeBlockStatement(BlockStatement block)`
  `void`
  `writeBreak(BreakStatement statement)`
  `void`
  `writeContinue(ContinueStatement statement)`
  `void`
  `writeDoWhileLoop(DoWhileStatement statement)`
  `void`
  `writeExpressionStatement(ExpressionStatement statement)`
  `protected void`
  `writeForInLoop(ForStatement statement)`
  `protected void`
  `writeForInLoopControlAndBlock(ForStatement statement)`
  `protected void`
  `writeForLoopWithClosureList(ForStatement statement)`
  `void`
  `writeForStatement(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)`
  `protected void`
  `writeStatementLabel(Statement statement)`
  `void`
  `writeSwitch(SwitchStatement statement)`
  `void`
  `writeSynchronized(SynchronizedStatement statement)`
  `void`
  `writeThrow(ThrowStatement statement)`
  `void`
  `writeTryCatchFinally(TryCatchStatement statement)`
  `void`
  `writeWhileLoop(WhileStatement statement)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### controller

    protected final WriterController controller

- ## Constructor Details

  - ### StatementWriter

    public StatementWriter(WriterController controller)

- ## Method Details

  - ### writeStatementLabel

    protected void writeStatementLabel(Statement statement)

  - ### writeBlockStatement

    public void writeBlockStatement(BlockStatement block)

  - ### writeForStatement

    public void writeForStatement(ForStatement statement)

  - ### writeForInLoop

    protected void writeForInLoop(ForStatement statement)

  - ### writeForInLoopControlAndBlock

    protected void writeForInLoopControlAndBlock(ForStatement statement)

  - ### writeIteratorHasNext

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

  - ### writeIteratorNext

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

  - ### writeForLoopWithClosureList

    protected void writeForLoopWithClosureList(ForStatement statement)

  - ### writeWhileLoop

    public void writeWhileLoop(WhileStatement statement)

  - ### writeDoWhileLoop

    public void writeDoWhileLoop(DoWhileStatement statement)

  - ### writeIfElse

    public void writeIfElse(IfStatement statement)

  - ### writeTryCatchFinally

    public void writeTryCatchFinally(TryCatchStatement statement)

  - ### writeSwitch

    public void writeSwitch(SwitchStatement statement)

  - ### writeBreak

    public void writeBreak(BreakStatement statement)

  - ### writeContinue

    public void writeContinue(ContinueStatement statement)

  - ### writeSynchronized

    public void writeSynchronized(SynchronizedStatement statement)

  - ### writeAssert

    public void writeAssert(AssertStatement statement)

  - ### writeThrow

    public void writeThrow(ThrowStatement statement)

  - ### writeReturn

    public void writeReturn(ReturnStatement statement)

  - ### writeExpressionStatement

    public void writeExpressionStatement(ExpressionStatement statement)