public class Id extends SystemFunction
operation
argument
EVALUATE_METHOD, ITERATE_METHOD, locationId, PROCESS_METHOD, staticProperties
Constructor and Description |
---|
Id() |
Modifier and Type | Method and Description |
---|---|
PathMap.PathMapNodeSet |
addToPathMap(PathMap pathMap,
PathMap.PathMapNodeSet pathMapNodeSet)
Add a representation of a doc() call or similar function to a PathMap.
|
void |
checkArguments(ExpressionVisitor visitor)
Static analysis: prevent sorting of the argument
|
int |
computeSpecialProperties()
Get the static properties of this expression (other than its type).
|
static SequenceIterator |
getIdMultiple(DocumentInfo doc,
SequenceIterator idrefs)
Get an iterator over the nodes that have an id equal to one of the values is a set of whitespace separated
strings
|
static SequenceIterator |
getIdSingle(DocumentInfo doc,
java.lang.String idrefs)
Get an iterator over the nodes that have an id equal to one of the values is a whitespace separated
string
|
SequenceIterator |
iterate(XPathContext context)
Evaluate the function to return an iteration of selected nodes.
|
Expression |
preEvaluate(ExpressionVisitor visitor)
preEvaluate: this method suppresses compile-time evaluation by doing nothing
|
Expression |
simplify(ExpressionVisitor visitor)
Simplify: add a second implicit argument, the context document
|
addContextDocumentArgument, addDocToPathMap, computeCardinality, copy, getDetails, getErrorCodeForTypeErrors, getItemType, getRequiredType, makeSystemFunction, optimize, setDetails, useContextItemAsDefault
addExternalFunctionCallToPathMap, checkArgumentCount, equals, explain, getArguments, getDisplayName, getFunctionName, getNumberOfArguments, hashCode, iterateSubExpressions, promote, replaceSubExpression, setArguments, setFunctionName, simplifyArguments, toString, typeCheck
adoptChildExpression, checkForUpdatingSubexpressions, checkPermittedContents, computeDependencies, computeStaticProperties, display, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluateItem, evaluatePendingUpdates, explain, findParentOf, getCardinality, getColumnNumber, getColumnNumber, getConstructType, getContainer, getDependencies, getExecutable, getHostLanguage, getImplementationMethod, getIntrinsicDependencies, getLineNumber, getLineNumber, getLocationId, getLocationProvider, getObjectName, getProperties, getProperty, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, getSystemId, hasLoopingSubexpression, implementsStaticTypeCheck, isUpdatingExpression, iterateEvents, markTailFunctionCalls, process, resetLocalStaticProperties, setContainer, setFiltered, setFlattened, setLocationId, staticTypeCheck, suppressValidation, typeError
public Expression simplify(ExpressionVisitor visitor) throws XPathException
simplify
in class FunctionCall
visitor
- an expression visitorXPathException
- if an error is discovered during expression
rewritingpublic void checkArguments(ExpressionVisitor visitor) throws XPathException
checkArguments
in class SystemFunction
visitor
- the expression visitorXPathException
public Expression preEvaluate(ExpressionVisitor visitor)
preEvaluate
in class FunctionCall
visitor
- an expression visitorpublic int computeSpecialProperties()
computeSpecialProperties
in class SystemFunction
public PathMap.PathMapNodeSet addToPathMap(PathMap pathMap, PathMap.PathMapNodeSet pathMapNodeSet)
addToPathMap
in class Expression
pathMap
- the PathMap to which the expression should be addedpathMapNodeSet
- public SequenceIterator iterate(XPathContext context) throws XPathException
iterate
in interface SequenceIterable
iterate
in class Expression
context
- supplies the context for evaluationXPathException
- if any dynamic error occurs evaluating the
expressionpublic static SequenceIterator getIdSingle(DocumentInfo doc, java.lang.String idrefs) throws XPathException
doc
- The document to be searchedidrefs
- a string containing zero or more whitespace-separated ID values to be found in the documentXPathException
public static SequenceIterator getIdMultiple(DocumentInfo doc, SequenceIterator idrefs) throws XPathException
doc
- The document to be searchedidrefs
- an iterator over a set of strings each of which is a string containing
zero or more whitespace-separated ID values to be found in the documentXPathException