Package org.mvel2.ast
Class Function
- java.lang.Object
-
- org.mvel2.ast.ASTNode
-
- 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
Fields Modifier and Type Field Description protected ExecutableStatement
compiledBlock
protected boolean
compiledMode
protected java.lang.String
name
protected java.lang.String[]
parameters
protected int
parmNum
protected boolean
singleton
-
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, expr, fields, firstUnion, FQCN, IDENTIFIER, INLINE_COLLECTION, INVERT, literal, LITERAL, nameCache, nextASTNode, NOJIT, NUMERIC, offset, OPERATOR, OPT_SUBTR, pCtx, PCTX_STORED, safeAccessor, STACKLANG, start, STRONG_TYPING, THISREF
-
-
Constructor Summary
Constructors Constructor Description Function(java.lang.String name, char[] expr, int start, int offset, int blockStart, int blockOffset, int fields, ParserContext pCtx)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
call(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory, java.lang.Object[] parms)
void
checkArgumentCount(int passing)
ExecutableStatement
getCompiledBlock()
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)
java.lang.String
toString()
-
Methods inherited from class org.mvel2.ast.ASTNode
canSerializeAccessor, discard, getAbsoluteName, getAbsoluteRootElement, getAccessor, getClassLoader, getCursorPosition, getEgressType, getExpr, getFields, getLiteralValue, getNameAsArray, getOffset, getOperator, getStart, isAssignment, isCollection, isDebuggingSymbol, isDeepProperty, isDiscard, isFQCN, isIdentifier, isLiteral, isOperator, isOperator, isThisVal, setAccessor, setAsFQCNReference, setAsLiteral, setCursorPosition, setEgressType, setLiteralValue, setName, storeInLiteralRegister, storePctx, strongTyping
-
-
-
-
Field Detail
-
name
protected java.lang.String name
-
compiledBlock
protected ExecutableStatement compiledBlock
-
parameters
protected java.lang.String[] parameters
-
parmNum
protected int parmNum
-
compiledMode
protected boolean compiledMode
-
singleton
protected boolean singleton
-
-
Constructor Detail
-
Function
public Function(java.lang.String name, char[] expr, int start, int offset, int blockStart, int blockOffset, int fields, ParserContext pCtx)
-
-
Method Detail
-
getReducedValueAccelerated
public java.lang.Object getReducedValueAccelerated(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)
- Overrides:
getReducedValueAccelerated
in classASTNode
-
getReducedValue
public java.lang.Object getReducedValue(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory)
- Overrides:
getReducedValue
in classASTNode
-
call
public java.lang.Object call(java.lang.Object ctx, java.lang.Object thisValue, VariableResolverFactory factory, java.lang.Object[] parms)
-
setName
public void setName(java.lang.String name)
-
getParameters
public java.lang.String[] getParameters()
-
hasParameters
public boolean hasParameters()
-
checkArgumentCount
public void checkArgumentCount(int passing)
-
getCompiledBlock
public ExecutableStatement getCompiledBlock()
-
-