Class XSLLocalParam

    • Constructor Detail

      • XSLLocalParam

        public XSLLocalParam()
    • Method Detail

      • getBindingInformation

        public SourceBinding getBindingInformation​(StructuredQName name)
        Ask whether this element contains a binding for a variable with a given name; and if it does, return the source binding information
        Overrides:
        getBindingInformation in class StyleElement
        Parameters:
        name - the variable name
        Returns:
        the binding information if this element binds a variable of this name; otherwise null
      • getSlotNumber

        public int getSlotNumber()
        Get the slot number allocated to this variable (its position in the stackframe)
        Returns:
        the allocated slot number
      • prepareAttributes

        protected void prepareAttributes()
        Description copied from class: StyleElement
        Set the attribute list for the element. This is called to process the attributes (note the distinction from processAttributes in the superclass). Must be supplied in a subclass
        Specified by:
        prepareAttributes in class StyleElement
      • getDefaultValueExpressionSupplier

        public java.util.function.Supplier<Expression> getDefaultValueExpressionSupplier()
      • validate

        public void validate​(ComponentDeclaration decl)
                      throws XPathException
        Description copied from class: XSLGeneralVariable
        Check that the variable is not already declared, and allocate a slot number
        Overrides:
        validate in class XSLGeneralVariable
        Parameters:
        decl - the declaration being validated. A single XSLVariableDeclaration object may represent multiple declarations if it appears in a stylesheet module that is included/imported more than once
        Throws:
        XPathException - if any error is found during validation
      • isTunnelParam

        public boolean isTunnelParam()
      • isRequiredParam

        public boolean isRequiredParam()
      • seesAvuncularVariables

        protected boolean seesAvuncularVariables()
        Ask whether variables declared in an "uncle" element are visible.
        Overrides:
        seesAvuncularVariables in class StyleElement
        Returns:
        false if this xsl:param is a child of xsl:function (new rule in 4.0 draft)
      • fixupReferences

        public void fixupReferences()
                             throws XPathException
        Description copied from class: StyleElement
        Fix up references from XPath expressions. Overridden for function declarations and variable declarations
        Overrides:
        fixupReferences in class StyleElement
        Throws:
        XPathException - if any references cannot be fixed up.
      • compile

        public Expression compile​(Compilation exec,
                                  ComponentDeclaration decl)
                           throws XPathException
        Description copied from class: StyleElement
        Compile the instruction on the stylesheet tree into an executable instruction for use at run-time.
        Overrides:
        compile in class StyleElement
        Parameters:
        exec - the compilation episode
        decl - the containing top-level declaration, for example xsl:function or xsl:template
        Returns:
        either a ComputedExpression, or null. The value null is returned when compiling an instruction that returns a no-op, or when compiling a top-level object such as an xsl:template that compiles into something other than an instruction.
        Throws:
        XPathException - if validation fails
      • getCompiledParam

        public LocalParam getCompiledParam()
      • getRequiredType

        public SequenceType getRequiredType()
        Get the static type of the parameter. This is the declared type, because we cannot know the actual value in advance.
        Returns:
        the declared type (or @code {item()*} if no type is declared)