org.apache.xalan.templates

Class AVTPart

Implemented Interfaces:
java.io.Serializable, XSLTVisitable
Known Direct Subclasses:
AVTPartSimple, AVTPartXPath

public abstract class AVTPart
extends java.lang.Object
implements java.io.Serializable, XSLTVisitable

Class to hold a part, either a string or XPath, of an Attribute Value Template.

See Also:
Serialized Form

Constructor Summary

AVTPart()
Construct a part.

Method Summary

boolean
canTraverseOutsideSubtree()
Tell if this expression or it's subexpressions can traverse outside the current subtree.
void
evaluate(XPathContext xctxt, FastStringBuffer buf, int context, PrefixResolver nsNode)
Write the evaluated value into the given string buffer.
void
fixupVariables(java.util.Vector vars, int globalsSize)
This function is used to fixup variables from QNames to stack frame indexes at stylesheet build time.
String
getSimpleString()
Get the AVT part as the original string.
void
setXPathSupport(XPathContext support)
Set the XPath support.

Constructor Details

AVTPart

public AVTPart()
Construct a part.

Method Details

canTraverseOutsideSubtree

public boolean canTraverseOutsideSubtree()
Tell if this expression or it's subexpressions can traverse outside the current subtree.

Returns:
true if traversal outside the context node's subtree can occur.


evaluate

public void evaluate(XPathContext xctxt,
                     FastStringBuffer buf,
                     int context,
                     PrefixResolver nsNode)
            throws TransformerException
Write the evaluated value into the given string buffer.

Parameters:
xctxt - The XPath context to use to evaluate this AVT.
buf - Buffer to write into.
context - The current source tree context.
nsNode - The current namespace context (stylesheet tree context).

Throws:
TransformerException -


fixupVariables

public void fixupVariables(java.util.Vector vars,
                           int globalsSize)
This function is used to fixup variables from QNames to stack frame indexes at stylesheet build time.

Parameters:
vars - List of QNames that correspond to variables. This list should be searched backwards for the first qualified name that corresponds to the variable reference qname. The position of the QName in the vector from the start of the vector will be its position in the stack frame (but variables above the globalsTop value will need to be offset to the current stack frame).


getSimpleString

public String getSimpleString()
Get the AVT part as the original string.

Returns:
the AVT part as the original string.


setXPathSupport

public void setXPathSupport(XPathContext support)
Set the XPath support.

Parameters:
support - XPathContext to set.


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