railo.transformer.bytecode.statement.tag
Class TagLoop

java.lang.Object
  extended by railo.transformer.bytecode.statement.StatementBase
      extended by railo.transformer.bytecode.statement.tag.TagBase
          extended by railo.transformer.bytecode.statement.tag.TagGroup
              extended by railo.transformer.bytecode.statement.tag.TagLoop
All Implemented Interfaces:
Statement, FlowControl, FlowControlBreak, FlowControlContinue, HasBody, Tag

public final class TagLoop
extends TagGroup
implements FlowControlBreak, FlowControlContinue


Field Summary
static org.objectweb.asm.commons.Method GET_QUERY_OBJ
           
static org.objectweb.asm.commons.Method GET_QUERY_STRING
           
static int TYPE_ARRAY
           
static int TYPE_COLLECTION
           
static int TYPE_CONDITION
           
static int TYPE_FILE
           
static int TYPE_GROUP
           
static int TYPE_INDEX
           
static int TYPE_INNER_GROUP
           
static int TYPE_INNER_QUERY
           
static int TYPE_LIST
           
static int TYPE_NOTHING
           
static int TYPE_QUERY
           
 
Fields inherited from class railo.transformer.bytecode.statement.tag.TagGroup
TAG_LOOP, TAG_OUTPUT
 
Fields inherited from interface railo.transformer.bytecode.statement.FlowControl
BREAK, CONTINUE, RETRY
 
Constructor Summary
TagLoop(Position start, Position end)
           
 
Method Summary
 void _writeOut(BytecodeContext bc)
          write out the stament to the adater
 org.objectweb.asm.Label getBreakLabel()
           
 org.objectweb.asm.Label getContinueLabel()
           
 FlowControlFinal getFlowControlFinal()
           
 String getLabel()
           
 short getType()
           
 void setLabel(String label)
           
 void setLoopVisitor(LoopVisitor loopVisitor)
           
 void setType(int type)
           
 
Methods inherited from class railo.transformer.bytecode.statement.tag.TagGroup
getGroup, getNumberIterator, getPID, getQuery, hasGroup, hasNumberIterator, hasQuery, setGroup, setNumberIterator, setPID, setQuery
 
Methods inherited from class railo.transformer.bytecode.statement.tag.TagBase
_writeOut, addAttribute, addMetaData, addMissingAttribute, containsAttribute, getAppendix, getAttribute, getAttributes, getBody, getFullname, getMetaData, getMissingAttributes, getTagLibTag, isScriptBase, removeAttribute, setAppendix, setBody, setFullname, setScriptBase, setTagLibTag, toString
 
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, wait, wait, wait
 
Methods inherited from interface railo.transformer.bytecode.Statement
getEnd, getParent, getStart, hasFlowController, setEnd, setHasFlowController, setParent, setStart, writeOut
 

Field Detail

TYPE_FILE

public static final int TYPE_FILE
See Also:
Constant Field Values

TYPE_LIST

public static final int TYPE_LIST
See Also:
Constant Field Values

TYPE_INDEX

public static final int TYPE_INDEX
See Also:
Constant Field Values

TYPE_CONDITION

public static final int TYPE_CONDITION
See Also:
Constant Field Values

TYPE_QUERY

public static final int TYPE_QUERY
See Also:
Constant Field Values

TYPE_COLLECTION

public static final int TYPE_COLLECTION
See Also:
Constant Field Values

TYPE_ARRAY

public static final int TYPE_ARRAY
See Also:
Constant Field Values

TYPE_GROUP

public static final int TYPE_GROUP
See Also:
Constant Field Values

TYPE_INNER_GROUP

public static final int TYPE_INNER_GROUP
See Also:
Constant Field Values

TYPE_INNER_QUERY

public static final int TYPE_INNER_QUERY
See Also:
Constant Field Values

TYPE_NOTHING

public static final int TYPE_NOTHING
See Also:
Constant Field Values

GET_QUERY_OBJ

public static final org.objectweb.asm.commons.Method GET_QUERY_OBJ

GET_QUERY_STRING

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

TagLoop

public TagLoop(Position start,
               Position end)
Method Detail

setType

public void setType(int type)

_writeOut

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

Overrides:
_writeOut in class TagBase
Throws:
BytecodeException
See Also:
railo.transformer.bytecode.statement.tag.TagBase#_writeOut(org.objectweb.asm.commons.GeneratorAdapter)

getBreakLabel

public org.objectweb.asm.Label getBreakLabel()
Specified by:
getBreakLabel in interface FlowControlBreak
See Also:
railo.transformer.bytecode.statement.FlowControl#getBreakLabel()

getContinueLabel

public org.objectweb.asm.Label getContinueLabel()
Specified by:
getContinueLabel in interface FlowControlContinue
See Also:
railo.transformer.bytecode.statement.FlowControl#getContinueLabel()

getType

public short getType()
Specified by:
getType in class TagGroup

setLoopVisitor

public void setLoopVisitor(LoopVisitor loopVisitor)

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;

setLabel

public void setLabel(String label)

getLabel

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


Copyright © 2012 Railo