org.mvel2.ast
Class IfNode

java.lang.Object
  extended by org.mvel2.ast.ASTNode
      extended by org.mvel2.ast.IfNode
All Implemented Interfaces:
Serializable, Cloneable, NestedStatement

public class IfNode
extends ASTNode
implements NestedStatement

Author:
Christopher Brock
See Also:
Serialized Form

Field Summary
protected  char[] block
           
protected  ExecutableStatement condition
           
protected  ExecutableStatement elseBlock
           
protected  IfNode elseIf
           
protected  ExecutableStatement nestedStatement
           
 
Fields inherited from class org.mvel2.ast.ASTNode
accessor, ARRAY_TYPE_LITERAL, ASSIGN, BLOCK_DO, BLOCK_DO_UNTIL, BLOCK_FOR, BLOCK_FOREACH, BLOCK_IF, BLOCK_UNTIL, BLOCK_WHILE, BLOCK_WITH, COLLECTION, COMPILE_IMMEDIATE, cursorPosition, DEEP_PROPERTY, DEFERRED_TYPE_RES, DEOP, DISCARD, egressType, endOfName, fields, firstUnion, IDENTIFIER, INLINE_COLLECTION, INVERT, literal, LITERAL, name, nameCache, nextASTNode, NOJIT, NUMERIC, OPERATOR, OPT_SUBTR, PCTX_STORED, safeAccessor, STRONG_TYPING, THISREF
 
Constructor Summary
IfNode(char[] condition, char[] block, int fields, ParserContext pCtx)
           
IfNode(ExecutableStatement condition, ExecutableStatement nestedStatement, ExecutableStatement elseBlock)
           
 
Method Summary
 ExecutableStatement getElseBlock()
           
 ExecutableStatement getNestedStatement()
           
 Object getReducedValue(Object ctx, Object thisValue, VariableResolverFactory factory)
           
 Object getReducedValueAccelerated(Object ctx, Object thisValue, VariableResolverFactory factory)
           
 IfNode setElseBlock(char[] block)
           
 IfNode setElseIf(IfNode elseIf)
           
 String toString()
           
 
Methods inherited from class org.mvel2.ast.ASTNode
canSerializeAccessor, discard, getAbsoluteName, getAbsoluteRemainder, getAbsoluteRootElement, getAccessor, getCursorPosition, getEgressType, getFields, getLiteralValue, getName, getNameAsArray, getOperator, isAssignment, isCollection, isDebuggingSymbol, isDeepProperty, isDiscard, isIdentifier, isLiteral, isOperator, isOperator, isThisVal, setAccessor, setAsLiteral, setCursorPosition, setEgressType, setLiteralValue, setName, storeInLiteralRegister, storePctx, strongTyping, tryStaticAccess
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

block

protected char[] block

condition

protected ExecutableStatement condition

nestedStatement

protected ExecutableStatement nestedStatement

elseIf

protected IfNode elseIf

elseBlock

protected ExecutableStatement elseBlock
Constructor Detail

IfNode

public IfNode(char[] condition,
              char[] block,
              int fields,
              ParserContext pCtx)

IfNode

public IfNode(ExecutableStatement condition,
              ExecutableStatement nestedStatement,
              ExecutableStatement elseBlock)
Method Detail

getReducedValueAccelerated

public Object getReducedValueAccelerated(Object ctx,
                                         Object thisValue,
                                         VariableResolverFactory factory)
Overrides:
getReducedValueAccelerated in class ASTNode

getReducedValue

public Object getReducedValue(Object ctx,
                              Object thisValue,
                              VariableResolverFactory factory)
Overrides:
getReducedValue in class ASTNode

getNestedStatement

public ExecutableStatement getNestedStatement()
Specified by:
getNestedStatement in interface NestedStatement

setElseIf

public IfNode setElseIf(IfNode elseIf)

getElseBlock

public ExecutableStatement getElseBlock()

setElseBlock

public IfNode setElseBlock(char[] block)

toString

public String toString()
Overrides:
toString in class ASTNode


Copyright © 2011. All Rights Reserved.