public class FunctionMultiArgs extends Function3Args
Constructor and Description |
---|
FunctionMultiArgs() |
Modifier and Type | Method and Description |
---|---|
void |
callArgVisitors(XPathVisitor visitor)
Call the visitors for the function arguments.
|
boolean |
canTraverseOutsideSubtree()
Tell if this expression or it's subexpressions can traverse outside
the current subtree.
|
void |
checkNumberArgs(int argNum)
Check that the number of arguments passed to this function is correct.
|
boolean |
deepEquals(Expression expr)
Compare this object with another object and see
if they are equal, include the sub heararchy.
|
void |
fixupVariables(Vector vars,
int globalsSize)
This function is used to fixup variables from QNames to stack frame
indexes at stylesheet build time.
|
Expression[] |
getArgs()
Return an expression array containing arguments at index 3 or greater.
|
protected void |
reportWrongNumberArgs()
Constructs and throws a WrongNumberArgException with the appropriate
message for this function object.
|
void |
setArg(Expression arg,
int argNum)
Set an argument expression for a function.
|
getArg2
getArg1
getArg0, getExpression, setExpression
callVisitors, execute, postCompileStep
asIterator, asIteratorRaw, asNode, assertion, bool, error, execute, execute, execute, executeCharsToContentHandler, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, getColumnNumber, getExpressionOwner, getLineNumber, getPublicId, getSystemId, isNodesetExpr, isSameClass, isStableNumber, num, warn, xstr
public Expression[] getArgs()
public void setArg(Expression arg, int argNum) throws WrongNumberArgsException
setArg
in class Function3Args
arg
- non-null expression that represents the argument.argNum
- The argument number index.WrongNumberArgsException
- If a derived class determines that the
number of arguments is incorrect.public void fixupVariables(Vector vars, int globalsSize)
fixupVariables
in class Function3Args
vars
- List of QNames that correspond to variables. This list
should be searched backwards for the first qualified name that
corresponds to the variable reference qname. The position of the
QName in the vector from the start of the vector will be its position
in the stack frame (but variables above the globalsTop value will need
to be offset to the current stack frame).public void checkNumberArgs(int argNum) throws WrongNumberArgsException
checkNumberArgs
in class Function3Args
argNum
- The number of arguments that is being passed to the function.WrongNumberArgsException
protected void reportWrongNumberArgs() throws WrongNumberArgsException
reportWrongNumberArgs
in class Function3Args
WrongNumberArgsException
public boolean canTraverseOutsideSubtree()
canTraverseOutsideSubtree
in class Function3Args
public void callArgVisitors(XPathVisitor visitor)
Function
callArgVisitors
in class Function3Args
XPathVisitable.callVisitors(ExpressionOwner, XPathVisitor)
public boolean deepEquals(Expression expr)
Expression
deepEquals
in class Function3Args
expr
- Another expression object.Expression.deepEquals(Expression)
Copyright © 2017 JBoss by Red Hat. All rights reserved.