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 java.lang.Object

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `protected 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)