public class Root extends SystemFunctionCall
operationargumentEFFECTIVE_BOOLEAN_VALUE, EVALUATE_METHOD, EVENT_FEED_METHOD, INHERITED_CONTEXT, INSPECTION_CONTEXT, ITEM_FEED_METHOD, ITERATE_METHOD, locationId, MAX_SEQUENCE_LENGTH, MAX_STRING_LENGTH, NAVIGATION_CONTEXT, NODE_VALUE_CONTEXT, PROCESS_METHOD, PUSH_SELECTION, staticProperties, UNBOUNDED_LOWER, UNBOUNDED_UPPER, W3C_CONSUMING, W3C_FREE_RANGING, W3C_GROUP_CONSUMING, W3C_MOTIONLESS, WATCH_METHOD| Constructor and Description |
|---|
Root() |
| Modifier and Type | Method and Description |
|---|---|
PathMap.PathMapNodeSet |
addToPathMap(PathMap pathMap,
PathMap.PathMapNodeSet pathMapNodeSet)
Add a representation of this expression to a PathMap.
|
Sequence |
call(XPathContext context,
Sequence[] arguments)
Evaluate the expression
|
int |
computeSpecialProperties()
Get the static properties of this expression (other than its type).
|
NodeInfo |
evaluateItem(XPathContext c)
Evaluate in a general context
|
ExpressionCompiler |
getExpressionCompiler()
Return the compiler of the Root Function
|
int |
getStreamability(int syntacticContext,
boolean allowExtensions,
List<String> reasons)
Get the "sweep" of this expression as defined in the W3C streamability specifications.
|
Expression |
simplify(ExpressionVisitor visitor)
Simplify and validate.
|
addContextDocumentArgument, addDocToPathMap, bindStaticContext, checkArguments, computeCardinality, copy, equalOrNull, equals, getContextNode, getConvertingCallable, getDefaultArgumentNode, getDetails, getErrorCodeForTypeErrors, getFunctionItemType, getImplementationMethod, getItemType, getOperation, getRequiredType, iterateSubExpressionInfo, makeSystemFunction, optimize, setDetails, useContextItemAsDefaultaddExternalFunctionCallToPathMap, checkArgumentCount, explain, getArguments, getDisplayName, getExpressionName, getFunctionName, getNumberOfArguments, hashCode, iterateSubExpressions, preEvaluate, promote, replaceSubExpression, setArguments, setFunctionName, simplifyArguments, toString, typeCheckadoptChildExpression, checkForUpdatingSubexpressions, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluatePendingUpdates, explain, getCardinality, getColumnNumber, getColumnNumber, getConstructType, getContainer, getDependencies, getEvaluationMethod, getExecutable, getHostLanguage, getIntegerBounds, getIntrinsicDependencies, getLineNumber, getLineNumber, getLocationId, getLocationProvider, getObjectName, getProperties, getProperty, getPublicId, getSlotsUsed, getSpecialProperties, getStreamingAdjunct, getSystemId, getSystemId, hasVariableBinding, implementsStaticTypeCheck, isSubtreeExpression, isUpdatingExpression, isVacuousExpression, iterate, iterateEvents, markTailFunctionCalls, process, resetLocalStaticProperties, setContainer, setEvaluationMethod, setFiltered, setFlattened, setLocationId, staticTypeCheck, suppressValidation, toPattern, toStreamingPattern, typeErrorpublic Expression simplify(ExpressionVisitor visitor) throws XPathException
simplify in class FunctionCallvisitor - an expression visitorXPathException - if an error is discovered during expression
rewritingpublic int computeSpecialProperties()
computeSpecialProperties in class SystemFunctionCallpublic PathMap.PathMapNodeSet addToPathMap(PathMap pathMap, PathMap.PathMapNodeSet pathMapNodeSet)
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.
addToPathMap in class ExpressionpathMap - the PathMap to which the expression should be addedpathMapNodeSet - public NodeInfo evaluateItem(XPathContext c) throws XPathException
evaluateItem in class Expressionc - The context in which the expression is to be evaluatedXPathException - if any dynamic error occurs evaluating the
expressionpublic Sequence call(XPathContext context, Sequence[] arguments) throws XPathException
context - the dynamic evaluation contextarguments - the values of the arguments, supplied as SequencesXPathException - if a dynamic error occurs during the evaluation of the expressionpublic int getStreamability(int syntacticContext,
boolean allowExtensions,
List<String> reasons)
ExpressiongetStreamability in class ExpressionsyntacticContext - one of the values Expression.NAVIGATION_CONTEXT,
Expression.NODE_VALUE_CONTEXT, Expression.INHERITED_CONTEXT, Expression.INSPECTION_CONTEXTallowExtensions - if false, the definition of "guaranteed streamability" in the
W3C specification is used. If true, Saxon extensions are permitted, which make somereasons - the caller may supply a list, in which case the implementation may add to this
list a message explaining why the construct is not streamable, suitable for inclusion in an
error message.Expression.W3C_MOTIONLESS, Expression.W3C_CONSUMING,
Expression.W3C_GROUP_CONSUMING, Expression.W3C_FREE_RANGINGpublic ExpressionCompiler getExpressionCompiler()
getExpressionCompiler in class ExpressionCopyright (c) 2004-2013 Saxonica Limited. All rights reserved.