Class Block.BlockElaborator

  • Enclosing class:
    Block

    public static class Block.BlockElaborator
    extends PullElaborator
    Elaborator for a "Block", which is typically either an XPath sequence expression (a, b, c) or an XSLT sequence constructor
    • Constructor Detail

      • BlockElaborator

        public BlockElaborator()
    • Method Detail

      • lazily

        public SequenceEvaluator lazily​(boolean repeatable,
                                        boolean lazyEvaluationRequired)
        Description copied from class: Elaborator
        Get a function that evaluates the underlying expression lazily
        Overrides:
        lazily in class Elaborator
        Parameters:
        repeatable - true if the resulting Sequence must be usable repeatedly; false if it only needs to be used once
        lazyEvaluationRequired - true if the expression MUST be evaluated lazily, for example to prevent spurious errors or side-effects if it has been lifted out of a loop
        Returns:
        an evaluator for the expression that returns a Sequence (which may be a lazy 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