public class OuterForExpression extends ForExpression
ForExpression.EventMappingAction, ForExpression.MappingAction
refCount, requiredType, slotNumber, variableName
EFFECTIVE_BOOLEAN_VALUE, EVALUATE_METHOD, ITEM_FEED_METHOD, ITERATE_METHOD, MAX_SEQUENCE_LENGTH, MAX_STRING_LENGTH, PROCESS_METHOD, staticProperties, UNBOUNDED_LOWER, UNBOUNDED_UPPER, UPDATE_METHOD, WATCH_METHOD
Constructor and Description |
---|
OuterForExpression() |
Modifier and Type | Method and Description |
---|---|
Expression |
copy()
Copy an expression.
|
void |
evaluatePendingUpdates(XPathContext context,
PendingUpdateList pul)
Evaluate an updating expression, adding the results to a Pending Update List.
|
protected void |
explainSpecializedAttributes(ExpressionPresenter out) |
ExpressionCompiler |
getExpressionCompiler()
Return the compiler of the OuterFor expression
|
protected int |
getRangeVariableCardinality()
Get the cardinality of the range variable
|
SequenceIterator |
iterate(XPathContext context)
Iterate over the result of the expression
|
EventIterator |
iterateEvents(XPathContext context)
Deliver the result of the expression as a sequence of events.
|
Expression |
optimize(ExpressionVisitor visitor,
ContextItemStaticInfo contextItemType)
Optimize the expression
|
void |
process(XPathContext context)
Process this expression as an instruction, writing results to the current
outputter
|
checkPermittedContents, computeCardinality, export, getConstructType, getExpressionName, getImplementationMethod, getIntegerBounds, getItemType, getStreamingAdjunct, hasVariableBinding, isVacuousExpression, markTailFunctionCalls, promoteWhereClause, toString, typeCheck, unordered
addReference, addToPathMap, checkForUpdatingSubexpressions, evaluateVariable, extendBindingList, getAction, getActionOp, getCost, getIntegerBoundsForVariable, getLocalSlotNumber, getNominalReferenceCount, getObjectName, getRequiredSlots, getRequiredType, getSequence, getSequenceOp, getVariableEQName, getVariableName, getVariableQName, isAssignable, isGlobal, isIndexedVariable, isUpdatingExpression, operands, promoteChildren, refineTypeInformation, replaceVariable, setAction, setIndexedVariable, setRequiredType, setSequence, setSlotNumber, setVariableQName, suppressValidation
adoptChildExpression, checkedOperands, clearStreamabilityData, computeDependencies, computeSpecialProperties, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluateItem, explain, getCardinality, getConfiguration, getDependencies, getEvaluationMethod, getHostLanguage, getIntrinsicDependencies, getLocation, getNetCost, getPackageData, getParentExpression, getPosture, getPostureAndSweepIfKnown, getProperties, getProperty, getRetainedStaticContext, getSlotsUsed, getSpecialProperties, getStaticBaseURI, getStaticBaseURIString, getStreamability, getSweep, getSystemId, identityHashCode, implementsStaticTypeCheck, isCallOn, isCallOnSystemFunction, isIdentical, isSubtreeExpression, makeStreamingAdjunct, operandList, operandSparseList, optimizeChildren, optimizeForType, promote, resetLocalStaticProperties, restoreParentPointers, setEvaluationMethod, setFiltered, setFlattened, setLocation, setParentExpression, setPostureAndSweep, setRetainedStaticContext, setRetainedStaticContextLocally, setStaticProperty, simplify, simplifyChildren, staticTypeCheck, toPattern, toShortString, toStreamingPattern, typeCheckChildren, typeError
protected int getRangeVariableCardinality()
getRangeVariableCardinality
in class ForExpression
public Expression optimize(ExpressionVisitor visitor, ContextItemStaticInfo contextItemType) throws XPathException
optimize
in class ForExpression
visitor
- an expression visitorcontextItemType
- the static type of "." at the point where this expression is invoked.
The parameter is set to null if it is known statically that the context item will be undefined.
If the type of the context item is not known statically, the argument is set to
Type.ITEM_TYPE
XPathException
- if an error is discovered during this phase
(typically a type error)public Expression copy()
copy
in class ForExpression
public SequenceIterator iterate(XPathContext context) throws XPathException
iterate
in class ForExpression
context
- supplies the context for evaluationXPathException
- if any dynamic error occurs evaluating the
expressionpublic EventIterator iterateEvents(XPathContext context) throws XPathException
iterateEvents
in class ForExpression
context
- The dynamic evaluation contextXPathException
- if a dynamic error occurs during expression evaluationpublic void process(XPathContext context) throws XPathException
process
in class ForExpression
context
- The dynamic context, giving access to the current node,
the current variables, etc.XPathException
- if a dynamic error occurspublic void evaluatePendingUpdates(XPathContext context, PendingUpdateList pul) throws XPathException
evaluatePendingUpdates
in class ForExpression
context
- the XPath dynamic evaluation contextpul
- the pending update list to which the results should be writtenXPathException
- if evaluation failspublic ExpressionCompiler getExpressionCompiler()
getExpressionCompiler
in class ForExpression
protected void explainSpecializedAttributes(ExpressionPresenter out)
explainSpecializedAttributes
in class ForExpression
Copyright (c) 2004-2014 Saxonica Limited. All rights reserved.