railo.transformer.bytecode.statement
Class ForEach

java.lang.Object
  extended by railo.transformer.bytecode.statement.StatementBase
      extended by railo.transformer.bytecode.statement.ForEach
All Implemented Interfaces:
Statement, FlowControl, FlowControlBreak, FlowControlContinue, HasBody

public final class ForEach
extends StatementBase
implements FlowControlBreak, FlowControlContinue, HasBody


Field Summary
static org.objectweb.asm.commons.Method TO_ITERATOR
           
 
Fields inherited from interface railo.transformer.bytecode.statement.FlowControl
BREAK, CONTINUE, RETRY
 
Constructor Summary
ForEach(Variable key, Variable value, Body body, Position start, Position end, String label)
          Constructor of the class
 
Method Summary
 void _writeOut(BytecodeContext bc)
          write out the stament to the adater
 Body getBody()
           
 org.objectweb.asm.Label getBreakLabel()
           
 org.objectweb.asm.Label getContinueLabel()
           
 FlowControlFinal getFlowControlFinal()
           
 String getLabel()
           
 
Methods inherited from class railo.transformer.bytecode.statement.StatementBase
getDescendantCount, getEnd, getParent, getStart, hasFlowController, setEnd, setHasFlowController, setParent, setStart, writeOut
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TO_ITERATOR

public static final org.objectweb.asm.commons.Method TO_ITERATOR
Constructor Detail

ForEach

public ForEach(Variable key,
               Variable value,
               Body body,
               Position start,
               Position end,
               String label)
Constructor of the class

Parameters:
key -
value -
body -
line -
Method Detail

_writeOut

public void _writeOut(BytecodeContext bc)
               throws BytecodeException
Description copied from class: StatementBase
write out the stament to the adater

Specified by:
_writeOut in class StatementBase
Throws:
BytecodeException

getBreakLabel

public org.objectweb.asm.Label getBreakLabel()
Specified by:
getBreakLabel in interface FlowControlBreak

getContinueLabel

public org.objectweb.asm.Label getContinueLabel()
Specified by:
getContinueLabel in interface FlowControlContinue

getBody

public Body getBody()
Specified by:
getBody in interface HasBody

getFlowControlFinal

public FlowControlFinal getFlowControlFinal()
Specified by:
getFlowControlFinal in interface Statement
Returns:
return the label where the finally block of this tags starts, IF there is a finally block, otherwise return null;

getLabel

public String getLabel()
Specified by:
getLabel in interface FlowControl


Copyright © 2012 Railo