org.mvel2.ast
Class Function

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

public class Function
extends ASTNode
implements Safe

See Also:
Serialized Form

Field Summary
protected  ExecutableStatement compiledBlock
           
protected  java.lang.String name
           
protected  java.lang.String[] parameters
           
protected  int parmNum
           
 
Fields inherited from class org.mvel2.ast.ASTNode
accessor, ASSIGN, BLOCK_DO, BLOCK_DO_UNTIL, BLOCK_FOR, BLOCK_FOREACH, BLOCK_IF, BLOCK_UNTIL, BLOCK_WHILE, BLOCK_WITH, COLLECTION, COMPILE_IMMEDIATE, cursorPosition, DEEP_PROPERTY, DEOP, discard, egressType, endOfName, fields, firstUnion, FOLD, IDENTIFIER, INLINE_COLLECTION, INVERT, literal, LITERAL, LOOKAHEAD, METHOD, nameCache, NEGATION, nextASTNode, NOJIT, NUMERIC, OPERATOR, safeAccessor, STR_LITERAL, THISREF
 
Constructor Summary
Function(java.lang.String name, char[] parameters, char[] block, ParserContext pCtx)
           
 
Method Summary
 java.lang.Object call(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory, java.lang.Object[] parms)
           
 void checkArgumentCount(int passing)
           
 java.lang.String getName()
           
 java.lang.String[] getParameters()
           
 java.lang.Object getReducedValue(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)
           
 java.lang.Object getReducedValueAccelerated(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)
           
 boolean hasParameters()
           
 void setName(java.lang.String name)
           
 void setParameters(java.lang.String[] parameters)
           
 java.lang.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, setDiscard, setEgressType, setLiteralValue, setName, tryStaticAccess
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

name

protected java.lang.String name

compiledBlock

protected ExecutableStatement compiledBlock

parameters

protected java.lang.String[] parameters

parmNum

protected int parmNum
Constructor Detail

Function

public Function(java.lang.String name,
                char[] parameters,
                char[] block,
                ParserContext pCtx)
Method Detail

getReducedValueAccelerated

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

getReducedValue

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

call

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

getName

public java.lang.String getName()
Overrides:
getName in class ASTNode

setName

public void setName(java.lang.String name)

getParameters

public java.lang.String[] getParameters()

setParameters

public void setParameters(java.lang.String[] parameters)

hasParameters

public boolean hasParameters()

checkArgumentCount

public void checkArgumentCount(int passing)

toString

public java.lang.String toString()
Overrides:
toString in class ASTNode


Copyright © 2008. All Rights Reserved.