org.apache.xalan.templates

Class XUnresolvedVariable

public class XUnresolvedVariable extends XObject

An instance of this class holds unto a variable until it is executed. It is used at this time for global variables which must (we think) forward reference.
Constructor Summary
XUnresolvedVariable(ElemVariable obj, int sourceNode, TransformerImpl transformer, int varStackPos, int varStackContext, boolean isGlobal)
Create an XUnresolvedVariable, that may be executed at a later time.
Method Summary
XObjectexecute(XPathContext xctxt)
For support of literal objects in xpaths.
intgetType()
Tell what kind of class this is.
StringgetTypeString()
Given a request type, return the equivalent string.
voidsetVarStackContext(int bottom)
Set an index into the variable stack where the variable context ends, i.e. at the point we should terminate the search.
voidsetVarStackPos(int top)
Set an index to the point in the variable stack where we should begin variable searches for evaluation of expressions.

Constructor Detail

XUnresolvedVariable

public XUnresolvedVariable(ElemVariable obj, int sourceNode, TransformerImpl transformer, int varStackPos, int varStackContext, boolean isGlobal)
Create an XUnresolvedVariable, that may be executed at a later time. This is primarily used so that forward referencing works with global variables. An XUnresolvedVariable is initially pushed into the global variable stack, and then replaced with the real thing when it is accessed.

Parameters: obj Must be a non-null reference to an ElemVariable. sourceNode The node context for execution. transformer The transformer execution context. varStackPos An index to the point in the variable stack where we should begin variable searches for evaluation of expressions. varStackContext An index into the variable stack where the variable context ends, i.e. at the point we should terminate the search. isGlobal true if this is a global variable.

Method Detail

execute

public XObject execute(XPathContext xctxt)
For support of literal objects in xpaths.

Parameters: xctxt The XPath execution context.

Returns: This object.

Throws: javax.xml.transform.TransformerException

getType

public int getType()
Tell what kind of class this is.

Returns: CLASS_UNRESOLVEDVARIABLE

getTypeString

public String getTypeString()
Given a request type, return the equivalent string. For diagnostic purposes.

Returns: An informational string.

setVarStackContext

public void setVarStackContext(int bottom)
Set an index into the variable stack where the variable context ends, i.e. at the point we should terminate the search.

Parameters: bottom The point at which the search should terminate, normally zero for global variables.

setVarStackPos

public void setVarStackPos(int top)
Set an index to the point in the variable stack where we should begin variable searches for evaluation of expressions. This is -1 if m_isTopLevel is false.

Parameters: top A valid value that specifies where in the variable stack the search should begin.

Copyright B) 2006 Apache XML Project. All Rights Reserved.