Class ParserExtension.TemporaryXSLTVariableBinding

java.lang.Object
net.sf.saxon.expr.parser.ParserExtension.TemporaryXSLTVariableBinding
All Implemented Interfaces:
Binding, LocalBinding
Enclosing class:
ParserExtension

public static class ParserExtension.TemporaryXSLTVariableBinding extends Object implements LocalBinding
  • Constructor Details

    • TemporaryXSLTVariableBinding

      public TemporaryXSLTVariableBinding(SourceBinding decl)
  • Method Details

    • getRequiredType

      public SequenceType getRequiredType()
      Description copied from interface: Binding
      Get the declared type of the variable
      Specified by:
      getRequiredType in interface Binding
      Returns:
      the declared type
    • evaluateVariable

      public Sequence evaluateVariable(XPathContext context)
      Description copied from interface: Binding
      Evaluate the variable
      Specified by:
      evaluateVariable in interface Binding
      Parameters:
      context - the XPath dynamic evaluation context
      Returns:
      the result of evaluating the variable
    • isGlobal

      public boolean isGlobal()
      Description copied from interface: Binding
      Indicate whether the binding is local or global. A global binding is one that has a fixed value for the life of a query or transformation; any other binding is local.
      Specified by:
      isGlobal in interface Binding
      Returns:
      true if the binding is global
    • isAssignable

      public boolean isAssignable()
      Description copied from interface: Binding
      Test whether it is permitted to assign to the variable using the saxon:assign extension element. This will only be for an XSLT global variable where the extra attribute saxon:assignable="yes" is present.
      Specified by:
      isAssignable in interface Binding
      Returns:
      true if the binding is assignable
    • getLocalSlotNumber

      public int getLocalSlotNumber()
      Description copied from interface: LocalBinding
      Return the slot number of the variable held on the local stack frame
      Specified by:
      getLocalSlotNumber in interface LocalBinding
      Returns:
      the slot number on the local stack frame
    • getVariableQName

      public StructuredQName getVariableQName()
      Description copied from interface: Binding
      Get the name of the variable
      Specified by:
      getVariableQName in interface Binding
      Returns:
      the name of the variable, as a structured QName
    • addReference

      public void addReference(VariableReference ref, boolean isLoopingReference)
      Description copied from interface: Binding
      Register a variable reference that refers to the variable bound in this expression
      Specified by:
      addReference in interface Binding
      Parameters:
      ref - the variable reference
      isLoopingReference - - true if the reference occurs within a loop, such as the predicate of a filter expression
    • getIntegerBoundsForVariable

      public IntegerValue[] getIntegerBoundsForVariable()
      Description copied from interface: Binding
      If the variable is bound to an integer, get the minimum and maximum possible values. Return null if unknown or not applicable
      Specified by:
      getIntegerBoundsForVariable in interface Binding
      Returns:
      a pair of integers containing the minimum and maximum values for the integer value; or null if the value is not an integer or the range is unknown
    • setIndexedVariable

      public void setIndexedVariable()
      Description copied from interface: LocalBinding
      Say that the bound value has the potential to be indexed
      Specified by:
      setIndexedVariable in interface LocalBinding
    • isIndexedVariable

      public boolean isIndexedVariable()
      Description copied from interface: LocalBinding
      Ask whether the binding is to be indexed
      Specified by:
      isIndexedVariable in interface LocalBinding
      Returns:
      true if the variable value can be indexed