org.apache.xalan.templates
Class XUnresolvedVariable
java.lang.Object
|
+--org.apache.xpath.Expression
|
+--org.apache.xpath.objects.XObject
|
+--org.apache.xalan.templates.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.
- See Also:
- Serialized Form
Method Summary |
XObject |
execute(XPathContext xctxt)
For support of literal objects in xpaths. |
int |
getType()
Tell what kind of class this is. |
java.lang.String |
getTypeString()
Given a request type, return the equivalent string. |
void |
setVarStackContext(int bottom)
Set an index into the variable stack where the variable context
ends, i.e. |
void |
setVarStackPos(int top)
Set an index to the point in the variable stack where we should
begin variable searches for evaluation of expressions. |
Methods inherited from class org.apache.xpath.objects.XObject |
allowDetachToRelease,
appendToFsb,
bool,
boolWithSideEffects,
callVisitors,
castToType,
create,
create,
deepEquals,
destruct,
detach,
dispatchCharactersEvents,
equals,
fixupVariables,
getFresh,
greaterThan,
greaterThanOrEqual,
iter,
lessThan,
lessThanOrEqual,
mutableNodeset,
nodelist,
nodeset,
notEquals,
num,
numWithSideEffects,
object,
reset,
rtf,
rtf,
rtree,
rtree,
str,
toString,
xstr |
Methods inherited from class org.apache.xpath.Expression |
asIterator,
asIteratorRaw,
asNode,
assertion,
bool,
canTraverseOutsideSubtree,
error,
execute,
execute,
execute,
executeCharsToContentHandler,
exprAddChild,
exprGetChild,
exprGetNumChildren,
exprGetParent,
exprSetParent,
getColumnNumber,
getExpressionOwner,
getLineNumber,
getPublicId,
getSystemId,
isNodesetExpr,
isStableNumber,
num,
warn,
xstr |
Methods inherited from class java.lang.Object |
equals,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
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.
execute
public XObject execute(XPathContext xctxt)
throws TransformerException
- For support of literal objects in xpaths.
- Parameters:
xctxt
- The XPath execution context.- Returns:
- This object.
- Throws:
- TransformerException -
- Overrides:
- execute in class XObject
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.
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.
getType
public int getType()
- Tell what kind of class this is.
- Returns:
- CLASS_UNRESOLVEDVARIABLE
- Overrides:
- getType in class XObject
getTypeString
public java.lang.String getTypeString()
- Given a request type, return the equivalent string.
For diagnostic purposes.
- Returns:
- An informational string.
- Overrides:
- getTypeString in class XObject
Copyright © 2006 Apache XML Project. All Rights Reserved.