A basic implementation of the class XPathExecutionContext. More...
Classes | |
| struct | ContextNodeListPositionCache |
Public Types | |
| typedef XalanVector< XalanNode * > | CurrentNodeStackType |
| typedef XalanVector< const NodeRefListBase * > | ContextNodeListStackType |
Public Types inherited from XPathExecutionContext | |
| typedef XalanVector< XObjectPtr > | XObjectArgVectorType |
| typedef NodeRefListBase::size_type | size_type |
| typedef GetAndReleaseCachedString | GetCachedString |
Public Member Functions | |
| XPathExecutionContextDefault (XPathEnvSupport &theXPathEnvSupport, DOMSupport &theDOMSupport, XObjectFactory &theXObjectFactory, XalanNode *theCurrentNode=0, const NodeRefListBase *theContextNodeList=0, const PrefixResolver *thePrefixResolver=0) | |
| Construct an XPathExecutionContextDefault object. More... | |
| XPathExecutionContextDefault (MemoryManagerType &theManager, XalanNode *theCurrentNode=0, const NodeRefListBase *theContextNodeList=0, const PrefixResolver *thePrefixResolver=0) | |
| Construct an XPathExecutionContextDefault object. More... | |
| virtual | ~XPathExecutionContextDefault () |
| XPathEnvSupport * | getXPathEnvSupport () const |
| Get the XPathEnvSupport instance. More... | |
| void | setXPathEnvSupport (XPathEnvSupport *theSupport) |
| Set the XPathEnvSupport instance. More... | |
| void | setDOMSupport (DOMSupport *theDOMSupport) |
| Set the DOMSupport instance. More... | |
| void | setXObjectFactory (XObjectFactory *theXObjectFactory) |
| Set the XObjectFactory instance. More... | |
| XalanQNameByValue & | getScratchQName () const |
| Get a reference to the scratch QNameByValue instance. More... | |
| virtual void | doFormatNumber (double number, const XalanDOMString &pattern, const XalanDecimalFormatSymbols *theDFS, XalanDOMString &theResult, const XalanNode *context=0, const LocatorType *locator=0) |
| virtual void | reset () |
| Reset the instance. More... | |
| virtual XalanNode * | getCurrentNode () const |
| Retrieve the node currently being executed. More... | |
| virtual void | pushCurrentNode (XalanNode *theCurrentNode) |
| Change the node currently being executed. More... | |
| virtual void | popCurrentNode () |
| Reset the node currently being executed. More... | |
| virtual bool | isNodeAfter (const XalanNode &node1, const XalanNode &node2) const |
| Determine if a node is after another node, in document order. More... | |
| virtual void | pushContextNodeList (const NodeRefListBase &theList) |
| Push the node list for current context. More... | |
| virtual void | popContextNodeList () |
| Pop the node list for current context. More... | |
| virtual const NodeRefListBase & | getContextNodeList () const |
| Get the node list for current context. More... | |
| virtual size_type | getContextNodeListLength () const |
| virtual size_type | getContextNodeListPosition (const XalanNode &contextNode) const |
| virtual bool | elementAvailable (const XalanQName &theQName) const |
| Determine if an external element is available. More... | |
| virtual bool | elementAvailable (const XalanDOMString &theName, const LocatorType *locator) const |
| Determine if an external element is available by resolving a string to a QName. More... | |
| virtual bool | functionAvailable (const XalanQName &theQName) const |
| Determine if a function is available. More... | |
| virtual bool | functionAvailable (const XalanDOMString &theName, const LocatorType *locator) const |
| Determine if a function is available. More... | |
| virtual const XObjectPtr | extFunction (const XalanDOMString &theNamespace, const XalanDOMString &functionName, XalanNode *context, const XObjectArgVectorType &argVec, const LocatorType *locator) |
| Handle an extension function. More... | |
| virtual XalanDocument * | parseXML (MemoryManagerType &theManager, const XalanDOMString &urlString, const XalanDOMString &base) const |
| Provides support for XML parsing service. More... | |
| virtual MutableNodeRefList * | borrowMutableNodeRefList () |
| Borrow a cached MutableNodeRefList instance. More... | |
| virtual bool | returnMutableNodeRefList (MutableNodeRefList *theList) |
| Return a previously borrowed MutableNodeRefList instance. More... | |
| virtual MutableNodeRefList * | createMutableNodeRefList (MemoryManagerType &theManager) const |
| Create a MutableNodeRefList with the appropriate context. More... | |
| virtual XalanDOMString & | getCachedString () |
| Get a cached string for temporary use. More... | |
| virtual bool | releaseCachedString (XalanDOMString &theString) |
| Return a cached string. More... | |
| virtual void | getNodeSetByKey (XalanDocument *doc, const XalanQName &qname, const XalanDOMString &ref, MutableNodeRefList &nodelist) |
| Given a valid element key, return the corresponding node list. More... | |
| virtual void | getNodeSetByKey (XalanDocument *doc, const XalanDOMString &name, const XalanDOMString &ref, const LocatorType *locator, MutableNodeRefList &nodelist) |
| Given a valid element key, return the corresponding node list. More... | |
| virtual const XObjectPtr | getVariable (const XalanQName &name, const LocatorType *locator=0) |
| Given a name, locate a variable in the current context, and return a pointer to the object. More... | |
| virtual const PrefixResolver * | getPrefixResolver () const |
| Retrieve the resolver for namespaces. More... | |
| virtual void | setPrefixResolver (const PrefixResolver *thePrefixResolver) |
| Change the resolver for namespaces. More... | |
| virtual const XalanDOMString * | getNamespaceForPrefix (const XalanDOMString &prefix) const |
| Retrieve the URI corresponding to a namespace prefix. More... | |
| virtual const XalanDOMString & | findURIFromDoc (const XalanDocument *owner) const |
| Given a DOM Document, tell what URI was used to parse it. More... | |
| virtual const XalanDOMString & | getUnparsedEntityURI (const XalanDOMString &theName, const XalanDocument &theDocument) const |
| The getUnparsedEntityURI function returns the URI of the unparsed entity with the specified name in the same document as the context node (see [3.3 Unparsed Entities]). More... | |
| virtual bool | shouldStripSourceNode (const XalanText &node) |
| Tells, through the combination of the default-space attribute on xsl:stylesheet, xsl:strip-space, xsl:preserve-space, and the xml:space attribute, whether or not extra whitespace should be stripped from the node. More... | |
| virtual XalanDocument * | getSourceDocument (const XalanDOMString &theURI) const |
| Get the document associated with the given URI. More... | |
| virtual void | setSourceDocument (const XalanDOMString &theURI, XalanDocument *theDocument) |
| Associate a document with a given URI. More... | |
| virtual void | formatNumber (double number, const XalanDOMString &pattern, XalanDOMString &theResult, const XalanNode *context=0, const LocatorType *locator=0) |
| Formats a number according to the specified pattern. More... | |
| virtual void | formatNumber (double number, const XalanDOMString &pattern, const XalanDOMString &dfsName, XalanDOMString &theResult, const XalanNode *context=0, const LocatorType *locator=0) |
| Formats a number according to the specified pattern. More... | |
| virtual void | error (const XalanDOMString &msg, const XalanNode *sourceNode=0, const LocatorType *locator=0) const |
| Report an error and throw an exception. More... | |
| virtual void | warn (const XalanDOMString &msg, const XalanNode *sourceNode=0, const LocatorType *locator=0) const |
| Report a warning. More... | |
| virtual void | message (const XalanDOMString &msg, const XalanNode *sourceNode=0, const LocatorType *locator=0) const |
| Output a message. More... | |
Public Member Functions inherited from XPathExecutionContext | |
| XPathExecutionContext (MemoryManagerType &m_memoryManager, XObjectFactory *theXObjectFactory=0) | |
| virtual | ~XPathExecutionContext () |
| XObjectFactory & | getXObjectFactory () const |
| Retrieve the factory object for creating XObjects. More... | |
Public Member Functions inherited from ExecutionContext | |
| ExecutionContext (MemoryManagerType &m_memoryManager) | |
| virtual | ~ExecutionContext () |
| MemoryManagerType & | getMemoryManager () |
Static Public Member Functions | |
| static XPathExecutionContextDefault * | create (MemoryManagerType &theManager, XalanNode *theCurrentNode=0, const NodeRefListBase *theContextNodeList=0, const PrefixResolver *thePrefixResolver=0) |
Protected Types | |
| enum | { eNodeListCacheListSize = 50 } |
| typedef XalanObjectCache < MutableNodeRefList, DefaultCacheCreateFunctorMemMgr < MutableNodeRefList > , DeleteFunctor < MutableNodeRefList > , ClearCacheResetFunctor < MutableNodeRefList > > | NodeListCacheType |
Protected Attributes | |
| XPathEnvSupport * | m_xpathEnvSupport |
| DOMSupport * | m_domSupport |
| CurrentNodeStackType | m_currentNodeStack |
| ContextNodeListStackType | m_contextNodeListStack |
| const PrefixResolver * | m_prefixResolver |
| XalanDOMString | m_currentPattern |
| NodeListCacheType | m_nodeListCache |
| XalanDOMStringCache | m_stringCache |
| ContextNodeListPositionCache | m_cachedPosition |
| XalanQNameByValue | m_scratchQName |
Protected Attributes inherited from XPathExecutionContext | |
| XObjectFactory * | m_xobjectFactory |
Protected Attributes inherited from ExecutionContext | |
| MemoryManagerType & | m_memoryManager |
Static Protected Attributes | |
| static const NodeRefList | s_dummyList |
A basic implementation of the class XPathExecutionContext.
| XPathExecutionContextDefault::XPathExecutionContextDefault | ( | XPathEnvSupport & | theXPathEnvSupport, |
| DOMSupport & | theDOMSupport, | ||
| XObjectFactory & | theXObjectFactory, | ||
| XalanNode * | theCurrentNode = 0, |
||
| const NodeRefListBase * | theContextNodeList = 0, |
||
| const PrefixResolver * | thePrefixResolver = 0 |
||
| ) |
Construct an XPathExecutionContextDefault object.
| theXPathEnvSupport | XPathEnvSupport class instance |
| theDOMSupport | DOMSupport class instance |
| theXobjectFactory | factory class instance for XObjects |
| theCurrentNode | current node in the source tree |
| theContextNodeList | node list for current context |
| thePrefixResolver | pointer to prefix resolver to use |
|
explicit |
Construct an XPathExecutionContextDefault object.
| theXPathEnvSupport | XPathEnvSupport class instance |
| theXObjectFactory | factory class instance for XObjects |
| theCurrentNode | current node in the source tree |
| theContextNodeList | node list for current context |
| thePrefixResolver | pointer to prefix resolver to use |
|
virtual |
|
virtual |
Borrow a cached MutableNodeRefList instance.
Implements XPathExecutionContext.
|
static |
|
virtual |
Create a MutableNodeRefList with the appropriate context.
Implements XPathExecutionContext.
|
virtual |
|
virtual |
Determine if an external element is available.
| theQName | The QName of the element |
Implements XPathExecutionContext.
|
virtual |
Determine if an external element is available by resolving a string to a QName.
| theName | The name of the element |
| locator | A LocatorType instance for error reporting |
Implements XPathExecutionContext.
|
virtual |
Report an error and throw an exception.
| msg | The text of the message. |
| sourceNode | The source node where the error occurred. May be 0. |
| locator | A Locator to determine where the error occurred. May be 0. |
Implements XPathExecutionContext.
|
virtual |
Handle an extension function.
| theNamespace | namespace of function |
| functionName | extension function name |
| context | The context node |
| argVec | vector of arguments to function |
| locator | A LocatorType instance for error reporting |
Implements XPathExecutionContext.
|
virtual |
Given a DOM Document, tell what URI was used to parse it.
Needed for relative resolution.
| owner | source document |
Implements XPathExecutionContext.
|
virtual |
Formats a number according to the specified pattern.
| number | the number to be formatted |
| pattern | the format pattern |
| theResult | the formatted number |
| context | the source node |
| locator | the locator |
Implements XPathExecutionContext.
|
virtual |
Formats a number according to the specified pattern.
| number | the number to be formatted |
| pattern | the format pattern |
| dfsName | the name of decimal format to use |
| theResult | the formatted number |
| context | the source node |
| locator | the locator |
Implements XPathExecutionContext.
|
virtual |
Determine if a function is available.
| theQName | The QName of the function |
Implements XPathExecutionContext.
|
virtual |
Determine if a function is available.
| theName | The name of the function |
| locator | A LocatorType instance for error reporting |
Implements XPathExecutionContext.
|
virtual |
Get a cached string for temporary use.
Implements XPathExecutionContext.
|
virtual |
|
virtual |
Implements XPathExecutionContext.
|
virtual |
Implements XPathExecutionContext.
|
virtual |
|
virtual |
Retrieve the URI corresponding to a namespace prefix.
| prefix | prefix for a namespace |
Implements XPathExecutionContext.
|
virtual |
Given a valid element key, return the corresponding node list.
| doc | source document |
| name | qname of the key, which must match the 'name' attribute on xsl:key |
| ref | value that must match the value found by the 'match' attribute on xsl:key |
| nodelist | A node list to contain the nodes found |
Implements XPathExecutionContext.
|
virtual |
Given a valid element key, return the corresponding node list.
| doc | source document |
| name | name of the key, which must match the 'name' attribute on xsl:key. Will be resolved to a qname using the provided resolver. |
| ref | value that must match the value found by the 'match' attribute on xsl:key |
| locator | The LocatorType to use for error reporting. Can be 0. |
| nodelist | A node list to contain the nodes found |
Implements XPathExecutionContext.
|
virtual |
Retrieve the resolver for namespaces.
Implements XPathExecutionContext.
| XalanQNameByValue& XPathExecutionContextDefault::getScratchQName | ( | ) | const |
Get a reference to the scratch QNameByValue instance.
|
virtual |
Get the document associated with the given URI.
| theURI | document URI |
Implements XPathExecutionContext.
|
virtual |
The getUnparsedEntityURI function returns the URI of the unparsed entity with the specified name in the same document as the context node (see [3.3 Unparsed Entities]).
It returns the empty string if there is no such entity.
| theName | name of entity |
| theDocument | document containing entity |
Implements XPathExecutionContext.
|
virtual |
Given a name, locate a variable in the current context, and return a pointer to the object.
| theName | name of variable |
Implements XPathExecutionContext.
| XPathEnvSupport* XPathExecutionContextDefault::getXPathEnvSupport | ( | ) | const |
Get the XPathEnvSupport instance.
|
virtual |
Determine if a node is after another node, in document order.
| node1 | The first node |
| node2 | The second node |
Implements XPathExecutionContext.
|
virtual |
Output a message.
| msg | The text of the message. |
| sourceNode | The source node where the message occurred. May be 0. |
| locator | A Locator to determine where the message occurred. May be 0. |
Implements XPathExecutionContext.
|
virtual |
Provides support for XML parsing service.
| urlString | location of the XML |
| base | base location for URI |
Implements XPathExecutionContext.
|
virtual |
Pop the node list for current context.
Implements XPathExecutionContext.
|
virtual |
Reset the node currently being executed.
Implements XPathExecutionContext.
|
virtual |
Push the node list for current context.
| theList | new node list |
Implements XPathExecutionContext.
|
virtual |
Change the node currently being executed.
| theCurrentNode | new current node |
Implements XPathExecutionContext.
|
virtual |
Return a cached string.
| theString | The string to release. |
Implements XPathExecutionContext.
|
virtual |
Reset the instance.
This must be called before another execution is attempted.
Implements XPathExecutionContext.
|
virtual |
Return a previously borrowed MutableNodeRefList instance.
| theList | A pointer the to previously borrowed instance. |
Implements XPathExecutionContext.
| void XPathExecutionContextDefault::setDOMSupport | ( | DOMSupport * | theDOMSupport | ) |
Set the DOMSupport instance.
| theDOMSupport | a reference to the instance to use. |
|
virtual |
Change the resolver for namespaces.
| thePrefixResolver | new object for namespace resolution |
Implements XPathExecutionContext.
|
virtual |
Associate a document with a given URI.
| theURI | document URI |
| theDocument | source document |
Implements XPathExecutionContext.
| void XPathExecutionContextDefault::setXObjectFactory | ( | XObjectFactory * | theXObjectFactory | ) |
Set the XObjectFactory instance.
| theFactory | a reference to the instance to use. |
| void XPathExecutionContextDefault::setXPathEnvSupport | ( | XPathEnvSupport * | theSupport | ) |
Set the XPathEnvSupport instance.
| theSupport | a reference to the instance to use. |
|
virtual |
Tells, through the combination of the default-space attribute on xsl:stylesheet, xsl:strip-space, xsl:preserve-space, and the xml:space attribute, whether or not extra whitespace should be stripped from the node.
Literal elements from template elements should not be tested with this function.
| textNode | text node from the source tree |
Implements XPathExecutionContext.
|
virtual |
Report a warning.
| msg | The text of the message. |
| sourceNode | The source node where the warning occurred. May be 0. |
| locator | A Locator to determine where the warning occurred. May be 0. |
Implements XPathExecutionContext.
|
mutableprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
mutableprotected |
|
protected |
|
protected |
|
staticprotected |
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
|
Xalan-C++ XSLT Processor Version 1.10 |
|
|