Class VariableReference


  • public class VariableReference
    extends Expression
    Variable reference: a reference to an XSL variable
    • Field Detail

      • fingerprint

        int fingerprint
    • Constructor Detail

      • VariableReference

        public VariableReference​(int fingerprint,
                                 StaticContext staticContext)
                          throws XPathException
        Constructor
        Parameters:
        name - the variable name (as a Name object)
        Throws:
        XPathException
    • Method Detail

      • getDependencies

        public int getDependencies()
        Determine which aspects of the context the expression depends on. The result is a bitwise-or'ed value composed from constants such as Context.VARIABLES and Context.CURRENT_NODE
        Specified by:
        getDependencies in class Expression
      • reduce

        public Expression reduce​(int dependencies,
                                 Context context)
                          throws XPathException
        Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.
        Specified by:
        reduce in class Expression
        Parameters:
        dependencies - The dependencies to be removed
        context - The context to be used for the partial evaluation
        Returns:
        a new expression that does not have any of the specified dependencies
        Throws:
        XPathException
      • evaluate

        public Value evaluate​(Context c)
                       throws XPathException
        Get the value of this variable in a given context.
        Specified by:
        evaluate in class Expression
        Parameters:
        context - the Context which contains the relevant variable bindings
        Returns:
        the value of the variable, if it is defined
        Throws:
        XPathException
      • getBinding

        public Binding getBinding()
        Get the object bound to the variable
      • getDataType

        public int getDataType()
        Determine the data type of the expression, if possible
        Specified by:
        getDataType in class Expression
        Returns:
        the type of the variable, if this can be determined statically; otherwise Value.ANY (meaning not known in advance)
      • simplify

        public Expression simplify()
        Simplify the expression. If the variable has a fixed value, the variable reference will be replaced with that value.
        Overrides:
        simplify in class Expression
        Returns:
        the simplified expression
      • display

        public void display​(int level)
        Diagnostic print of expression structure
        Specified by:
        display in class Expression