Class SwitchExpression.SwitchExprElaborator

  • Enclosing class:
    SwitchExpression

    public static class SwitchExpression.SwitchExprElaborator
    extends PullElaborator
    Elaborator for a "Switch" expression (typically an xsl:choose that tests one expression against a list of constants: not exactly equivalent to an XQuery 3.1 switch expression).

    Provides "push" and "pull" implementations, as well as a singleton implementation.

    • Constructor Detail

      • SwitchExprElaborator

        public SwitchExprElaborator()
    • Method Detail

      • elaborateForItem

        public ItemEvaluator elaborateForItem()
        Description copied from class: Elaborator
        Get a function that evaluates the underlying expression in the form of a Item. This must only be called for expressions whose result has cardinality zero or one.
        Overrides:
        elaborateForItem in class PullElaborator
        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 an Outputter
        Overrides:
        elaborateForPush in class PullElaborator
        Returns:
        an evaluator for the expression in push mode