Class Template

    • Constructor Detail

      • Template

        public Template()
    • Method Detail

      • init

        public void init​(int templateFingerprint,
                         int precedence,
                         int minImportPrecedence)
      • getFingerprint

        public int getFingerprint()
        Get the namepool fingerprint of the name of the template (if it is named)
        Returns:
        the fingerprint of the template name, or -1 if unnamed
      • getPrecedence

        public int getPrecedence()
      • getMinImportPrecedence

        public int getMinImportPrecedence()
      • setHasRequiredParams

        public void setHasRequiredParams​(boolean has)
      • hasRequiredParams

        public boolean hasRequiredParams()
      • apply

        public void apply​(XPathContext context,
                          Rule rule)
                   throws XPathException
        Process the template, without returning any tail calls
        Parameters:
        context - The dynamic context, giving access to the current node,
        rule -
        Throws:
        XPathException
      • applyLeavingTail

        public TailCall applyLeavingTail​(XPathContext context,
                                         Rule rule)
                                  throws XPathException
        Process this template, with the possibility of returning a tail call package if the template contains any tail calls that are to be performed by the caller.
        Throws:
        XPathException
      • expand

        public TailCall expand​(XPathContext context)
                        throws XPathException
        Expand the template. Called when the template is invoked using xsl:call-template. Invoking a template by this method does not change the current template.
        Throws:
        XPathException
      • getInstructionInfo

        public InstructionInfo getInstructionInfo()
        Get the InstructionInfo details about the construct. This information isn't used for tracing, but it is available when inspecting the context stack.
        Specified by:
        getInstructionInfo in interface InstructionInfoProvider
      • hasBadParentPointer

        public boolean hasBadParentPointer()
        Diagnostic method
        Returns:
        true if the template contains an expression with a bad parent pointer