net.sf.saxon.expr

Interface Container

public interface Container extends SourceLocator, Serializable

A Container is something other than an expression that can act as the container of an expression. It is typically an object such as a function, a global variable, or in XSLT a template, or an attribute set. When free-standing XPath expressions are compiled, the static context for the expression acts as its container.
Method Summary
intgetContainerGranularity()
Get the granularity of the container.
ExecutablegetExecutable()
Get the Executable (representing a complete stylesheet or query) of which this Container forms part
intgetHostLanguage()
Get the host language (XSLT, XQuery, XPath) used to implement the code in this container
LocationProvidergetLocationProvider()
Get the LocationProvider allowing location identifiers to be resolved.

Method Detail

getContainerGranularity

public int getContainerGranularity()
Get the granularity of the container. During successive phases of compilation, growing expression trees are rooted in containers of increasing granularity. The granularity of the container is used to avoid "repotting" a tree more frequently than is required, as this requires a complete traversal of the tree which can take a measurable time.

Returns: 0 for a temporary container created during parsing; 1 for a container that operates at the level of an XPath expression; 2 for a container at the level of a global function or template

getExecutable

public Executable getExecutable()
Get the Executable (representing a complete stylesheet or query) of which this Container forms part

Returns: the executable

getHostLanguage

public int getHostLanguage()
Get the host language (XSLT, XQuery, XPath) used to implement the code in this container

Returns: typically XSLT or XQUERY

getLocationProvider

public LocationProvider getLocationProvider()
Get the LocationProvider allowing location identifiers to be resolved.

Returns: the location provider