Package net.sf.saxon.expr.elab
Class ComplexNodePushElaborator
- java.lang.Object
-
- net.sf.saxon.expr.elab.Elaborator
-
- net.sf.saxon.expr.elab.FallbackElaborator
-
- net.sf.saxon.expr.elab.ComplexNodePushElaborator
-
- Direct Known Subclasses:
ComputedElement.ComputedElementElaborator
,FixedElement.FixedElementElaborator
public abstract class ComplexNodePushElaborator extends FallbackElaborator
Elaborator for element construction expressions (both fixed and computed). This class provides pull and single-item evaluation of these instructions; these invoke the corresponding push evaluator which must be implemented in a subclass.
-
-
Constructor Summary
Constructors Constructor Description ComplexNodePushElaborator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ItemEvaluator
elaborateForItem()
Get a function that evaluates the underlying expression in the form of aItem
.PullEvaluator
elaborateForPull()
Get a function that evaluates the underlying expression in the form of aSequenceIterator
PushEvaluator
elaborateForPush()
Get a function that evaluates the underlying expression in push mode, by writing events to anOutputter
-
Methods inherited from class net.sf.saxon.expr.elab.FallbackElaborator
eagerly, elaborateForBoolean, elaborateForUnicodeString, lazily
-
Methods inherited from class net.sf.saxon.expr.elab.Elaborator
elaborateForString, elaborateForUpdate, getConfiguration, getExpression, handleNullString, handleNullUnicodeString, handlePossiblyNullString, handlePossiblyNullUnicodeString, setExpression
-
-
-
-
Method Detail
-
elaborateForPull
public PullEvaluator elaborateForPull()
Description copied from class:Elaborator
Get a function that evaluates the underlying expression in the form of aSequenceIterator
- Overrides:
elaborateForPull
in classFallbackElaborator
- Returns:
- an evaluator for the expression that returns a
SequenceIterator
-
elaborateForItem
public ItemEvaluator elaborateForItem()
Description copied from class:Elaborator
Get a function that evaluates the underlying expression in the form of aItem
. This must only be called for expressions whose result has cardinality zero or one.- Overrides:
elaborateForItem
in classFallbackElaborator
- Returns:
- an evaluator for the expression that returns an
Item
, or null to represent an empty sequence.
-
elaborateForPush
public PushEvaluator elaborateForPush()
Description copied from class:Elaborator
Get a function that evaluates the underlying expression in push mode, by writing events to anOutputter
- Overrides:
elaborateForPush
in classFallbackElaborator
- Returns:
- an evaluator for the expression in push mode
-
-