Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
net.sf.saxon.expr.Expression
net.sf.saxon.expr.FunctionCall
net.sf.saxon.functions.SystemFunction
net.sf.saxon.functions.Root
public class Root
extends SystemFunction
Field Summary |
Fields inherited from class net.sf.saxon.functions.SystemFunction | |
operation |
Fields inherited from class net.sf.saxon.expr.FunctionCall | |
argument |
Fields inherited from class net.sf.saxon.expr.Expression | |
EVALUATE_METHOD , ITERATE_METHOD , PROCESS_METHOD , locationId , staticProperties |
Method Summary | |
PathMap.PathMapNodeSet |
|
int |
|
Item |
|
Expression |
|
Methods inherited from class net.sf.saxon.functions.SystemFunction | |
addContextDocumentArgument , addDocToPathMap , checkArguments , computeCardinality , computeSpecialProperties , copy , getDetails , getErrorCodeForTypeErrors , getItemType , getRequiredType , makeSystemFunction , optimize , setDetails , useContextItemAsDefault |
Methods inherited from class net.sf.saxon.expr.FunctionCall | |
addExternalFunctionCallToPathMap , checkArgumentCount , checkArguments , equals , explain , getArguments , getDisplayName , getFunctionName , getNumberOfArguments , hashCode , iterateSubExpressions , optimize , preEvaluate , promote , replaceSubExpression , setArguments , setFunctionName , simplify , simplifyArguments , toString , typeCheck |
public PathMap.PathMapNodeSet addToPathMap(PathMap pathMap, PathMap.PathMapNodeSet pathMapNodeSet)
Add a representation of this expression to a PathMap. The PathMap captures a map of the nodes visited by an expression in a source tree. The default implementation of this method assumes that an expression does no navigation other than the navigation done by evaluating its subexpressions, and that the subexpressions are evaluated in the same context as the containing expression. The method must be overridden for any expression where these assumptions do not hold. For example, implementations exist for AxisExpression, ParentExpression, and RootExpression (because they perform navigation), and for the doc(), document(), and collection() functions because they create a new navigation root. Implementations also exist for PathExpression and FilterExpression because they have subexpressions that are evaluated in a different context from the calling expression.
- Overrides:
- addToPathMap in interface Expression
- Parameters:
pathMap
- the PathMap to which the expression should be addedpathMapNodeSet
-
- Returns:
- the pathMapNode representing the focus established by this expression, in the case where this expression is the first operand of a path expression or filter expression. For an expression that does navigation, it represents the end of the arc in the path map that describes the navigation route. For other expressions, it is the same as the input pathMapNode.
public int computeSpecialProperties()
Get the static properties of this expression (other than its type). The result is bit-significant. These properties are used for optimizations. In general, if property bit is set, it is true, but if it is unset, the value is unknown.
- Overrides:
- computeSpecialProperties in interface SystemFunction
public Item evaluateItem(XPathContext c) throws XPathException
Evaluate in a general context
- Specified by:
- evaluateItem in interface EvaluableItem
- Overrides:
- evaluateItem in interface Expression
public Expression simplify(ExpressionVisitor visitor) throws XPathException
Simplify and validate.
- Overrides:
- simplify in interface FunctionCall
- Parameters:
visitor
- an expression visitor