18 #if !defined(XPATHEXECUTIONCONTEXT_HEADER_GUARD_1357924680)
19 #define XPATHEXECUTIONCONTEXT_HEADER_GUARD_1357924680
49 namespace XERCES_CPP_NAMESPACE
60 class XalanDecimalFormatSymbols;
73 using xercesc::ErrorHandler;
92 MemoryManager& theMemoryManager,
111 getCurrentNode()
const = 0;
119 pushCurrentNode(
XalanNode* theCurrentNode) = 0;
125 popCurrentNode() = 0;
134 m_executionContext(theExecutionContext)
141 m_executionContext.popCurrentNode();
157 assert(m_xobjectFactory != 0);
159 return *m_xobjectFactory;
186 popContextNodeList() = 0;
195 m_executionContext(theExecutionContext)
197 m_executionContext.pushContextNodeList(theNodeList);
202 m_executionContext.popContextNodeList();
216 getContextNodeList()
const = 0;
224 getContextNodeListLength()
const = 0;
234 getContextNodeListPosition(
const XalanNode& contextNode)
const = 0;
245 elementAvailable(
const XalanQName& theQName)
const = 0;
259 const Locator* locator)
const = 0;
269 functionAvailable(
const XalanQName& theQName)
const = 0;
282 const Locator* locator)
const = 0;
299 const XObjectArgVectorType& argVec,
300 const Locator* locator) = 0;
313 MemoryManager& theManager,
316 ErrorHandler* theErrorHandler = 0)
const = 0;
324 borrowMutableNodeRefList() = 0;
340 m_xpathExecutionContext(&executionContext),
341 m_mutableNodeRefList(executionContext.borrowMutableNodeRefList())
343 assert(m_mutableNodeRefList != 0);
348 m_xpathExecutionContext(theSource.m_xpathExecutionContext),
349 m_mutableNodeRefList(theSource.m_mutableNodeRefList)
351 assert(m_mutableNodeRefList != 0);
364 assert(m_mutableNodeRefList != 0);
366 return *m_mutableNodeRefList;
372 return m_mutableNodeRefList;
384 assert(m_xpathExecutionContext != 0);
386 if (m_mutableNodeRefList != 0)
388 m_xpathExecutionContext->returnMutableNodeRefList(m_mutableNodeRefList);
390 m_mutableNodeRefList = 0;
397 assert(m_xpathExecutionContext != 0);
401 *theResult = *m_mutableNodeRefList;
412 m_xpathExecutionContext = theRHS.m_xpathExecutionContext;
414 m_mutableNodeRefList = theRHS.m_mutableNodeRefList;
416 theRHS.m_mutableNodeRefList = 0;
436 getCachedString() = 0;
453 m_executionContext(&theExecutionContext),
454 m_string(&theExecutionContext.getCachedString())
460 m_executionContext(theSource.m_executionContext),
461 m_string(theSource.m_string)
463 theSource.m_string = 0;
470 m_executionContext->releaseCachedString(*m_string);
477 assert(m_string != 0);
485 return *m_executionContext;
513 createMutableNodeRefList(MemoryManager& theManager)
const = 0;
531 const Locator* locator,
551 const Locator* locator,
565 const Locator* locator = 0) = 0;
573 getPrefixResolver()
const = 0;
590 m_executionContext(theExecutionContext),
591 m_savedResolver(theExecutionContext.getPrefixResolver())
593 m_executionContext.setPrefixResolver(theResolver);
600 m_executionContext(theExecutionContext),
601 m_savedResolver(theOldResolver)
603 m_executionContext.setPrefixResolver(theNewResolver);
608 m_executionContext.setPrefixResolver(m_savedResolver);
647 getUnparsedEntityURI(
680 virtual void formatNumber(
685 const Locator* locator = 0) = 0;
698 virtual void formatNumber(
704 const Locator* locator = 0) = 0;
711 eClassification classification,
713 const Locator* locator,
719 eClassification classification,
724 shouldStripSourceNode(
const XalanText& node) = 0;
737 #endif // XPATHEXECUTIONCONTEXT_HEADER_GUARD_1357924680