Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.6

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

StylesheetConstructionContextDefault Class Reference

An default implementation of an abtract class which provides support for constructing the internal representation of a stylesheet. More...

#include <StylesheetConstructionContextDefault.hpp>

Inheritance diagram for StylesheetConstructionContextDefault

Collaboration diagram for StylesheetConstructionContextDefault:

List of all members.

Public Types

Public Methods

Static Public Methods


Detailed Description

An default implementation of an abtract class which provides support for constructing the internal representation of a stylesheet.


Member Typedef Documentation

typedef std::vector<ElemTemplateElement*> StylesheetConstructionContextDefault::ElemTemplateElementVectorType

typedef XalanArrayAllocator<const void*> StylesheetConstructionContextDefault::PointerVectorAllocatorType

typedef std::vector<StylesheetRoot*> StylesheetConstructionContextDefault::StylesheetVectorType

typedef XalanDOMCharVectorAllocatorType::size_type StylesheetConstructionContextDefault::VectorAllocatorSizeType

typedef XalanArrayAllocator<XalanDOMChar> StylesheetConstructionContextDefault::XalanDOMCharVectorAllocatorType


Member Enumeration Documentation

anonymous enum

Enumeration values:
eDefaultXalanDOMCharVectorBlockSize  
eDefaultAVTBlockSize  
eDefaultAVTPartSimpleBlockSize  
eDefaultAVTPartXPathBlockSize  
eDefaultXalanQNameByValueBlockSize  
eDefaultPointerVectorBlockSize  
eDefaultElemApplyTemplatesBlockSize  
eDefaultElemAttributeBlockSize  
eDefaultElemAttributeSetBlockSize  
eDefaultElemCallTemplateBlockSize  
eDefaultElemElementBlockSize  
eDefaultElemLiteralResultBlockSize  
eDefaultElemTemplateBlockSize  
eDefaultElemTextLiteralBlockSize  
eDefaultElemValueOfBlockSize  
eDefaultElemVariableBlockSize  

Constructor & Destructor Documentation

StylesheetConstructionContextDefault::StylesheetConstructionContextDefault ( XSLTEngineImpl & processor,
XPathFactory & xpathFactory,
VectorAllocatorSizeType theXalanDOMCharVectorAllocatorBlockSize = eDefaultXalanDOMCharVectorBlockSize,
XalanAVTAllocator::size_type theAVTAllocatorBlockSize = eDefaultAVTBlockSize,
XalanAVTPartSimpleAllocator::size_type theAVTPartSimpleAllocatorBlockSize = eDefaultAVTPartSimpleBlockSize,
XalanAVTPartXPathAllocator::size_type theAVTPartXPathAllocatorBlockSize = eDefaultAVTPartXPathBlockSize,
XalanQNameByValueAllocator::size_type theXalanQNameByValueAllocatorBlockSize = eDefaultXalanQNameByValueBlockSize,
VectorAllocatorSizeType thePointerVectorAllocatorBlockSize = eDefaultPointerVectorBlockSize )

virtual StylesheetConstructionContextDefault::~StylesheetConstructionContextDefault ( ) [virtual]


Member Function Documentation

virtual const AVTPart** StylesheetConstructionContextDefault::allocateAVTPartPointerVector ( size_type theLength ) [virtual]

Allocate a vector of const AVTPart* of the specified length.

Parameters:
theLength   The length of the vector
Returns:
A pointer to the vector.

Reimplemented from StylesheetConstructionContext.

virtual const AVT** StylesheetConstructionContextDefault::allocateAVTPointerVector ( size_type theLength ) [virtual]

Allocate a vector of const AVT* of the specified length.

Parameters:
theLength   The length of the vector
Returns:
A pointer to the vector.

Reimplemented from StylesheetConstructionContext.

virtual XalanDOMChar* StylesheetConstructionContextDefault::allocateXalanDOMCharVector ( const XalanDOMChar * theString,
XalanDOMString::size_type theLength = XalanDOMString::npos,
bool fTerminate = true ) [virtual]

Allocate a vector of XalanDOMChar of the specified size.

Parameters:
theString   The source character array
theLength   The length of the character vector
fTerminate   If true, terminate the new vector with 0
Returns:
A pointer to the array.

Reimplemented from StylesheetConstructionContext.

virtual XalanDOMChar* StylesheetConstructionContextDefault::allocateXalanDOMCharVector ( XalanDOMString::size_type theLength ) [virtual]

Allocate a vector of XalanDOMChar of the specified size.

Parameters:
theLength   The length of the character vector
Returns:
A pointer to the vector.

Reimplemented from StylesheetConstructionContext.

virtual Stylesheet* StylesheetConstructionContextDefault::create ( StylesheetRoot & theStylesheetRoot,
const XalanDOMString & theBaseIdentifier ) [virtual]

Create a new Stylesheet instance.

The StylesheetConstructionContext instance owns the Stylesheet instance, and will delete it when asked or when the StylesheetConstructionContext instance is destroyed.

Parameters:
A   reference to the StylesheetRoot instance.
theBaseIdentifier   A URI to the stylesheet file.
Returns:
A pointer to a new StylesheetRoot instance.

Reimplemented from StylesheetConstructionContext.

virtual StylesheetRoot* StylesheetConstructionContextDefault::create ( const XSLTInputSource & theInputSource ) [virtual]

Create a new StylesheetRoot instance.

The StylesheetConstructionContext instance owns the StylesheetRoot instance, and will delete it when asked or when the StylesheetConstructionContext instance is destroyed.

Parameters:
theInputSource   A reference to the input source.
Returns:
A pointer to a new StylesheetRoot instance.

Reimplemented from StylesheetConstructionContext.

virtual StylesheetRoot* StylesheetConstructionContextDefault::create ( const XalanDOMString & theBaseIdentifier ) [virtual]

Create a new StylesheetRoot instance.

The StylesheetConstructionContext instance owns the StylesheetRoot instance, and will delete it when asked or when the StylesheetConstructionContext instance is destroyed.

Parameters:
theBaseIdentifier   A URI to the stylesheet file.
Returns:
A pointer to a new StylesheetRoot instance.

Reimplemented from StylesheetConstructionContext.

virtual const AVT* StylesheetConstructionContextDefault::createAVT ( const LocatorType * locator,
const XalanDOMChar * name,
const XalanDOMChar * stringedValue,
const PrefixResolver & resolver ) [virtual]

Create an AVT instance.

Parameters:
locator   the Locator for the instance. May be null.
name   name of AVT
stringedValue   string value to parse
resolver   resolver for namespace resolution
Returns:
A pointer to the instance.

Reimplemented from StylesheetConstructionContext.

virtual const AVTPart* StylesheetConstructionContextDefault::createAVTPart ( const LocatorType * locator,
const XalanDOMChar * str,
XalanDOMString::size_type len,
const PrefixResolver & resolver ) [virtual]

Create an AVTPart instance.

Parameters:
locator   the Locator for the instance. May be null.
str   The XPath expression for the instance
len   The length of the expression
resolver   resolver for namespace resolution
Returns:
A pointer to the instance.

Reimplemented from StylesheetConstructionContext.

virtual const AVTPart* StylesheetConstructionContextDefault::createAVTPart ( const XalanDOMChar * theString,
XalanDOMString::size_type theLength = XalanDOMString::npos ) [virtual]

Create an AVTPart instance.

Parameters:
theString   The source character array
theLength   The length of the character vector
fTerminate   If true, terminate the new vector with 0
Returns:
A pointer to the instance.

Reimplemented from StylesheetConstructionContext.

virtual ElemTemplateElement* StylesheetConstructionContextDefault::createElement ( Stylesheet & stylesheetTree,
const XalanDOMChar * name,
const AttributeListType & atts,
ExtensionNSHandler & handler,
const LocatorType * locator = 0 ) [virtual]

Create an element to handle an extension element.

The instance owns the memory and will delete the element when it goes out of scope and the containing stylesheet is destroyed.

Parameters:
stylesheetTree   The stylesheet containing the element
name   The name of the element
atts   The list of attributes for the element
handler   The handler for elements in the extension namespace
locator   The Locator instance for error reporting. May be 0.

Returns:
A pointer to the new instance.

Reimplemented from StylesheetConstructionContext.

virtual ElemTemplateElement* StylesheetConstructionContextDefault::createElement ( Stylesheet & stylesheetTree,
const XalanDOMChar * chars,
XalanDOMString::size_type length,
bool preserveSpace,
bool disableOutputEscaping,
const LocatorType * locator = 0 ) [virtual]

Create a an element for literal text.

The instance owns the memory and will delete the element when it goes out of scope and the containing stylesheet is destroyed.

Parameters:
stylesheetTree   The stylesheet containing the element
chars   The pointer to character string for element
length   length of the chars parameter.
preserveSpace   true is space should be preserved
disableOutputEscaping   true if output escaping should be disabled
locator   The Locator instance for error reporting. May be 0.

Returns:
A pointer to the new instance.

Reimplemented from StylesheetConstructionContext.

virtual ElemTemplateElement* StylesheetConstructionContextDefault::createElement ( Stylesheet & stylesheetTree,
const XalanDOMChar * name,
const AttributeListType & atts,
const LocatorType * locator = 0 ) [virtual]

Create a literal result element.

The instance owns the memory and will delete the element when it goes out of scope and the containing stylesheet is destroyed.

Parameters:
stylesheetTree   The stylesheet containing the element
name   The name of the element
atts   The list of attributes for the element
locator   The Locator instance for error reporting. May be 0.

Returns:
A pointer to the new instance.

Reimplemented from StylesheetConstructionContext.

virtual ElemTemplateElement* StylesheetConstructionContextDefault::createElement ( int token,
Stylesheet & stylesheetTree,
const AttributeListType & atts,
const LocatorType * locator = 0 ) [virtual]

Create a stylesheet element for the provided type.

The instance owns the memory and will delete the element when it goes out of scope and the containing stylesheet is destroyed.

Parameters:
token   The enum value of the element to create.
stylesheetTree   The stylesheet containing the element
atts   The list of attributes for the element
locator   The Locator instance for error reporting. May be 0.

Returns:
A pointer to the new instance.

Reimplemented from StylesheetConstructionContext.

virtual XPath* StylesheetConstructionContextDefault::createMatchPattern ( const LocatorType * locator,
const XalanDOMChar * str,
const PrefixResolver & resolver ) [virtual]

Create and initialize an xpath for a match pattern and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator   the locator for the XPath. May be null.
str   string to match
resolver   resolver for namespace resolution
Returns:
XPath for match pattern

Reimplemented from StylesheetConstructionContext.

virtual XPath* StylesheetConstructionContextDefault::createMatchPattern ( const LocatorType * locator,
const XalanDOMString & str,
const PrefixResolver & resolver ) [virtual]

Create and initialize an xpath for a match pattern and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator   the locator for the XPath. May be null.
str   string to match
resolver   resolver for namespace resolution
Returns:
XPath for match pattern

Reimplemented from StylesheetConstructionContext.

virtual XPath* StylesheetConstructionContextDefault::createXPath ( const LocatorType * locator,
const XalanDOMChar * str,
const PrefixResolver & resolver ) [virtual]

Create and initialize an xpath and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator   the locator for the XPath. May be null.
str   string to match
resolver   resolver for namespace resolution
Returns:
XPath for string matched

Reimplemented from StylesheetConstructionContext.

virtual XPath* StylesheetConstructionContextDefault::createXPath ( const LocatorType * locator,
const XalanDOMChar * str,
XalanDOMString::size_type len,
const PrefixResolver & resolver ) [virtual]

Create and initialize an xpath and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator   the locator for the XPath. May be null.
str   string to match
resolver   resolver for namespace resolution
Returns:
XPath for string matched

Reimplemented from StylesheetConstructionContext.

virtual XPath* StylesheetConstructionContextDefault::createXPath ( const LocatorType * locator,
const XalanDOMString & str,
const PrefixResolver & resolver ) [virtual]

Create and initialize an xpath and return it.

This is to be used by stylesheet elements that need an XPath that is guaranteed to persist while it lives.

Parameters:
locator   the locator for the XPath. May be null.
str   string to match
resolver   resolver for namespace resolution
Returns:
XPath for string matched

Reimplemented from StylesheetConstructionContext.

virtual const XalanQName* StylesheetConstructionContextDefault::createXalanQName ( const XalanDOMChar * qname,
const NamespacesStackType & namespaces,
const LocatorType * locator = 0,
bool fUseDefault = false ) [virtual]

Create a XalanQName-derived instance.

Parameters:
qname   The qname string
namespaces   The stack of namespaces
Locator   The current Locator, if any
fUseDefault   If true, a qname without a prefix will use the default namespace
Returns:
A pointer to the new instance

Reimplemented from StylesheetConstructionContext.

virtual const XalanQName* StylesheetConstructionContextDefault::createXalanQName ( const XalanDOMString & qname,
const NamespacesStackType & namespaces,
const LocatorType * locator = 0,
bool fUseDefault = false ) [virtual]

Create a XalanQName-derived instance.

Parameters:
qname   The qname string
namespaces   The stack of namespaces
Locator   The current Locator, if any
fUseDefault   If true, a qname without a prefix will use the default namespace
Returns:
A pointer to the new instance

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::destroy ( StylesheetRoot * theStylesheetRoot ) [virtual]

Destroy a StylesheetRoot instance.

If this StylesheetConstructionContext instance does not own the StylesheetRoot, it will not delete it

Parameters:
theStylesheet   A pointer to the StylesheetRoot instance to delete.

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::error ( const char * msg,
const XalanNode * sourceNode,
const LocatorType * locator ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::error ( const char * msg,
const XalanNode * sourceNode = 0,
const ElemTemplateElement * styleNode = 0 ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::error ( const XalanDOMString & msg,
const XalanNode * sourceNode,
const LocatorType * locator ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::error ( const XalanDOMString & msg,
const XalanNode * sourceNode = 0,
const ElemTemplateElement * styleNode = 0 ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual XalanDOMString& StylesheetConstructionContextDefault::getCachedString ( ) [virtual]

Get a cached string for temporary use.

Returns:
A reference to the string

Reimplemented from StylesheetConstructionContext.

eElementToken StylesheetConstructionContextDefault::getElementNameToken ( const XalanDOMString & name ) [static]

virtual eElementToken StylesheetConstructionContextDefault::getElementToken ( const XalanDOMString & name ) const [virtual]

Given an XSL tag name, return an integer token that corresponds to the enums defined above.

Parameters:
name   a probable xsl:xxx element
Returns:
The enum value for that token, or ELEMNAME_UNDEFINED

Reimplemented from StylesheetConstructionContext.

virtual const LocatorType* StylesheetConstructionContextDefault::getLocatorFromStack ( ) const [virtual]

Get the locator from the top of the locator stack.

Returns:
A pointer to the Locator, or 0 if there is nothing on the stack.

Reimplemented from StylesheetConstructionContext.

virtual const XalanDOMString& StylesheetConstructionContextDefault::getPooledString ( const XalanDOMChar * theString,
XalanDOMString::size_type theLength = XalanDOMString::npos ) [virtual]

Get a pooled string given the source character array.

If the string already exists in the pool, no copy will be made. If not, a copy will be made and kept for later use.

Parameters:
theString   The source character array
theLength   The length of the character array
Returns:
a const reference to a pooled string.

Reimplemented from StylesheetConstructionContext.

virtual const XalanDOMString& StylesheetConstructionContextDefault::getPooledString ( const XalanDOMString & theString ) [virtual]

Get a pooled string given the source string.

If the string already exists in the pool, no copy will be made. If not, a copy will be made and kept for later use.

Parameters:
theString   The source string
Returns:
a const reference to a pooled string.

Reimplemented from StylesheetConstructionContext.

virtual URLAutoPtrType StylesheetConstructionContextDefault::getURLFromString ( const XalanDOMString & urlString,
const XalanDOMString & base ) [virtual]

Determine the fully qualified URI for a string.

Parameters:
urlString   string to qualify
base   base location for URI
Returns:
auto pointer to fully qualified URI

Reimplemented from StylesheetConstructionContext.

virtual URLAutoPtrType StylesheetConstructionContextDefault::getURLFromString ( const XalanDOMString & urlString ) [virtual]

Determine the fully qualified URI for a string.

Parameters:
urlString   string to qualify
Returns:
auto pointer to fully qualified URI

Reimplemented from StylesheetConstructionContext.

virtual XalanDOMString StylesheetConstructionContextDefault::getURLStringFromString ( const XalanDOMString & urlString,
const XalanDOMString & base ) [virtual]

Determine the fully qualified URI for a string.

Parameters:
urlString   string to qualify
base   base location for URI
Returns:
string to fully qualified URI

Reimplemented from StylesheetConstructionContext.

virtual XalanDOMString StylesheetConstructionContextDefault::getURLStringFromString ( const XalanDOMString & urlString ) [virtual]

Determine the fully qualified URI for a string.

Parameters:
urlString   string to qualify
Returns:
string to fully qualified URI

Reimplemented from StylesheetConstructionContext.

virtual const XalanDOMString& StylesheetConstructionContextDefault::getXSLTNamespaceURI ( ) const [virtual]

Retrieve the URI for the current XSLT namespace, for example, "http://www.w3.org/1999/XSL/Transform".

Returns:
URI string

Reimplemented from StylesheetConstructionContext.

virtual double StylesheetConstructionContextDefault::getXSLTVersionSupported ( ) const [virtual]

Get the latest XSLT version currently supported.

Returns:
XSLT version number

Reimplemented from StylesheetConstructionContext.

virtual const XalanDOMString& StylesheetConstructionContextDefault::getXalanXSLNameSpaceURL ( ) const [virtual]

Get the Xalan namespace for built-in extensions.

Returns:
Xalan namespace for extensions

Reimplemented from StylesheetConstructionContext.

virtual bool StylesheetConstructionContextDefault::isValidQName ( const XalanDOMChar * theName,
const Stylesheet & theStylesheet,
const LocatorType * theLocator = 0 ) [virtual]

Given an name, determine if it is a valid QName.

Parameters:
theName   The name to check
theStylesheet   The current Stylesheet instance
theLocator   The Locator for error reporting. May be 0.

Returns:
true if the string is a valid QName.

Reimplemented from StylesheetConstructionContext.

virtual bool StylesheetConstructionContextDefault::isXMLSpaceAttribute ( const XalanDOMChar * theAttributeName,
const Stylesheet & theStylesheet,
const LocatorType * theLocator = 0 ) [virtual]

Given an name, determine if it is the xml:space attribute.

Parameters:
theAttributeName   The name to check
theStylesheet   The current Stylesheet instance
theLocator   The Locator for error reporting. May be 0.

Returns:
true if the string is the xml:space attribute name

Reimplemented from StylesheetConstructionContext.

virtual bool StylesheetConstructionContextDefault::isXSLUseAttributeSetsAttribute ( const XalanDOMChar * theAttributeName,
const Stylesheet & theStylesheet,
const LocatorType * theLocator = 0 ) [virtual]

Given an name, determine if it is the xsl:use-attribute-sets attribute.

Parameters:
theAttributeName   The name to check
theStylesheet   The current Stylesheet instance
theLocator   The Locator for error reporting. May be 0.

Returns:
true if the string is the xsl:use-attribute-sets attribute name

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::message ( const char * msg,
const XalanNode * sourceNode,
const LocatorType * locator ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::message ( const char * msg,
const XalanNode * sourceNode = 0,
const ElemTemplateElement * styleNode = 0 ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::message ( const XalanDOMString & msg,
const XalanNode * sourceNode,
const LocatorType * locator ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::message ( const XalanDOMString & msg,
const XalanNode * sourceNode = 0,
const ElemTemplateElement * styleNode = 0 ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual XalanDocument* StylesheetConstructionContextDefault::parseXML ( const XalanDOMString & urlString,
DocumentHandlerType * docHandler,
XalanDocument * docToRegister ) [virtual]

Read in the XML file, either producing a Document or calling SAX events, and register the document in a table.

If the document has already been read in, it will not be reparsed.

Parameters:
urlString   location of the XML
docHandler   pointer to SAX event handler
docToRegister   if using a SAX event handler, the object to register in the source docs table.
Returns:
document object, which represents the parsed XML
Exceptions:
SAXException  

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::popLocatorStack ( ) [virtual]

Pop the locator from the top of the locator stack.

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::pushLocatorOnStack ( const LocatorType * locator ) [virtual]

Push a locator on to the locator stack.

Parameters:
A   pointer to the Locator to push.

Reimplemented from StylesheetConstructionContext.

virtual bool StylesheetConstructionContextDefault::releaseCachedString ( XalanDOMString & theString ) [virtual]

Return a cached string.

Parameters:
theString   The string to release.

Returns:
true if the string was released successfully.

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::reset ( ) [virtual]

Reset the StylesheetConstructionContext instance.

Any existing objects created by the instance will be destroyed.

Reimplemented from StylesheetConstructionContext.

virtual const XalanQName** StylesheetConstructionContextDefault::tokenizeQNames ( size_type & count,
const XalanDOMChar * qnameTokens,
const NamespacesStackType & namespaces,
const LocatorType * locator = 0,
bool fUseDefault = false ) [virtual]

Tokenize a string and return the QNames corresponding to those tokens.

Parameters:
count   The number of namespaces in the vector returned
qnameTokens   The string to tokenize
namespaces   The stack of namespaces
Locator   The current Locator, if any
fUseDefault   If true, qnames without prefixes will use the default namespace
Returns:
The resulting vector of XalanQName instances.

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::warn ( const char * msg,
const XalanNode * sourceNode,
const LocatorType * locator ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::warn ( const char * msg,
const XalanNode * sourceNode = 0,
const ElemTemplateElement * styleNode = 0 ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::warn ( const XalanDOMString & msg,
const XalanNode * sourceNode,
const LocatorType * locator ) const [virtual]

Reimplemented from StylesheetConstructionContext.

virtual void StylesheetConstructionContextDefault::warn ( const XalanDOMString & msg,
const XalanNode * sourceNode = 0,
const ElemTemplateElement * styleNode = 0 ) const [virtual]

Reimplemented from StylesheetConstructionContext.


The documentation for this class was generated from the following file:

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.6
Copyright © 2000, 2001, 2002, 2003 The Apache Software Foundation. All Rights Reserved.