Class NextMatch

All Implemented Interfaces:
Serializable, SourceLocator, LocationProvider, SaxonLocator, EvaluableItem, SequenceIterable, TailCallReturner, InstructionInfo, Locator

public class NextMatch extends ApplyImports
An xsl:next-match element in the stylesheet
See Also:
  • Constructor Details

    • NextMatch

      public NextMatch(boolean backwardsCompatible, boolean useTailRecursion)
  • Method Details

    • getInstructionNameCode

      public int getInstructionNameCode()
      Get the name of this instruction for diagnostic and tracing purposes
      Overrides:
      getInstructionNameCode in class ApplyImports
      Returns:
      a code identifying the instruction: typically but not always the fingerprint of a name in the XSLT namespace
    • processLeavingTail

      public TailCall processLeavingTail(XPathContext context) throws XPathException
      Description copied from class: Instruction
      ProcessLeavingTail: called to do the real work of this instruction. This method must be implemented in each subclass. The results of the instruction are written to the current Receiver, which can be obtained via the Controller.
      Specified by:
      processLeavingTail in interface TailCallReturner
      Overrides:
      processLeavingTail in class ApplyImports
      Parameters:
      context - The dynamic context of the transformation, giving access to the current node, the current variables, etc.
      Returns:
      null if the instruction has completed execution; or a TailCall indicating a function call or template call that is delegated to the caller, to be made after the stack has been unwound so as to save stack space.
      Throws:
      XPathException
    • explain

      public void explain(ExpressionPresenter out)
      Diagnostic print of expression structure. The abstract expression tree is written to the supplied output destination.
      Overrides:
      explain in class ApplyImports
      Parameters:
      out - the expression presenter used to display the structure