org.mvel2.ast
Class Function

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

public class Function
extends ASTNode
implements Safe

See Also:
Serialized Form

Field Summary
protected  ExecutableStatement compiledBlock
           
protected  String name
           
protected  String[] parameters
           
protected  int parmNum
           
 
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, nameCache, nextASTNode, NOJIT, NUMERIC, OPERATOR, OPT_SUBTR, PCTX_STORED, safeAccessor, STRONG_TYPING, THISREF
 
Constructor Summary
Function(String name, char[] parameters, char[] block, ParserContext pCtx)
           
 
Method Summary
 Object call(Object ctx, Object thisValue, VariableResolverFactory factory, Object[] parms)
           
 void checkArgumentCount(int passing)
           
 ExecutableStatement getCompiledBlock()
           
 String getName()
           
 String[] getParameters()
           
 Object getReducedValue(Object ctx, Object thisValue, VariableResolverFactory factory)
           
 Object getReducedValueAccelerated(Object ctx, Object thisValue, VariableResolverFactory factory)
           
 boolean hasParameters()
           
 void setName(String name)
           
 void setParameters(String[] parameters)
           
 String toString()
           
 
Methods inherited from class org.mvel2.ast.ASTNode
canSerializeAccessor, discard, getAbsoluteName, getAbsoluteRemainder, getAbsoluteRootElement, getAccessor, getCursorPosition, getEgressType, getFields, getLiteralValue, 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

name

protected String name

compiledBlock

protected ExecutableStatement compiledBlock

parameters

protected String[] parameters

parmNum

protected int parmNum
Constructor Detail

Function

public Function(String name,
                char[] parameters,
                char[] block,
                ParserContext pCtx)
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

call

public Object call(Object ctx,
                   Object thisValue,
                   VariableResolverFactory factory,
                   Object[] parms)

getName

public String getName()
Overrides:
getName in class ASTNode

setName

public void setName(String name)

getParameters

public String[] getParameters()

setParameters

public void setParameters(String[] parameters)

hasParameters

public boolean hasParameters()

checkArgumentCount

public void checkArgumentCount(int passing)

getCompiledBlock

public ExecutableStatement getCompiledBlock()

toString

public String toString()
Overrides:
toString in class ASTNode


Copyright © 2011. All Rights Reserved.