Class ContextStackFrame

java.lang.Object
net.sf.saxon.trace.ContextStackFrame
Direct Known Subclasses:
ContextStackFrame.ApplyTemplates, ContextStackFrame.BuiltInTemplateRule, ContextStackFrame.CallingApplication, ContextStackFrame.CallTemplate, ContextStackFrame.FunctionCall, ContextStackFrame.VariableEvaluation

public abstract class ContextStackFrame extends Object
An entry on the context stack. A new entry is created every time the context changes. This is a representation of the stack created on request; it does not hold live data.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    Subclass of ContextStackFrame representing an xsl:apply-templates call in XSLT
    static class 
    Subclass of ContextStackFrame representing a built-in template rule in XSLT
    static class 
    Subclass of ContextStackFrame representing the outermost stack frame, for the calling application
    static class 
    Subclass of ContextStackFrame representing an xsl:call-template instruction in XSLT
    static class 
    Subclass of ContextStackFrame representing a call to a user-defined function either in XSLT or XQuery
    static class 
    Subclass of ContextStackFrame representing the evaluation of a variable (typically a global variable)
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    Get the container of the instruction that caused this new context to be created.
    Get the value of the context item at this level of the context stack
    int
    Get the line number of the location of the instruction that caused this new context to be created
    Get the system ID representing the location of the instruction that caused this new context to be created
    abstract void
    Display a representation of the stack frame on the specified output stream
    void
    Set the container of the instruction that caused this new context to be created.
    void
    setContextItem(Item contextItem)
    Set the value of the context item at this level of the context stack
    void
    setLineNumber(int lineNumber)
    Set the line number of the location of the instruction that caused this new context to be created
    void
    Set the system ID representing the location of the instruction that caused this new context to be created
    protected String
    Show the location of a call (for use by subclasses)

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ContextStackFrame

      public ContextStackFrame()
  • Method Details

    • setSystemId

      public void setSystemId(String uri)
      Set the system ID representing the location of the instruction that caused this new context to be created
      Parameters:
      uri - the system ID (base URI/module URI) of the module containing the instruction
    • getSystemId

      public String getSystemId()
      Get the system ID representing the location of the instruction that caused this new context to be created
      Returns:
      the system ID (base URI/module URI) of the module containing the instruction
    • setLineNumber

      public void setLineNumber(int lineNumber)
      Set the line number of the location of the instruction that caused this new context to be created
      Parameters:
      lineNumber - the line number of the instruction within its containing module
    • getLineNumber

      public int getLineNumber()
      Get the line number of the location of the instruction that caused this new context to be created
      Returns:
      the line number of the instruction within its containing module
    • setContainer

      public void setContainer(Container container)
      Set the container of the instruction that caused this new context to be created. This will generally be an object such as an XSLT Template or a user-defined function
      Parameters:
      container - the container of the instruction
    • getContainer

      public Container getContainer()
      Get the container of the instruction that caused this new context to be created. This will generally be an object such as an XSLT Template or a user-defined function
      Returns:
      the container of the instruction in the expression tree
    • setContextItem

      public void setContextItem(Item contextItem)
      Set the value of the context item at this level of the context stack
      Parameters:
      contextItem - the context item as it was when this new context was created
    • getContextItem

      public Item getContextItem()
      Get the value of the context item at this level of the context stack
      Returns:
      the context item as it was when this new context was created
    • print

      public abstract void print(PrintStream out)
      Display a representation of the stack frame on the specified output stream
      Parameters:
      out - the output stream
    • showLocation

      protected String showLocation()
      Show the location of a call (for use by subclasses)
      Returns:
      typically "(" + systemId() + "#" + lineNumber() + ")"