Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

XPathEnvSupport.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 #if !defined(XPATHENVSUPPORT_HEADER_GUARD_1357924680)
17 #define XPATHENVSUPPORT_HEADER_GUARD_1357924680
18 
19 
20 
21 // Base include file. Must be first.
23 
24 
25 
26 // $$$ ToDo: Necessary while XalanDOMString is style a typedef.
28 
29 
30 
32 
33 
34 
36 
37 
38 
39 XALAN_DECLARE_XERCES_CLASS(Locator)
40 
41 
42 
43 XALAN_CPP_NAMESPACE_BEGIN
44 
45 
46 
50 class NodeRefListBase;
51 class PrefixResolver;
52 class XObject;
54 class XObjectFactory;
55 class XalanDocument;
56 class XalanElement;
57 class XalanNode;
58 class XalanQName;
59 
60 
61 
63 {
64 public:
65 
66  typedef XERCES_CPP_NAMESPACE_QUALIFIER Locator LocatorType;
67 
69 
70  XPathEnvSupport();
71 
72  virtual
73  ~XPathEnvSupport();
74 
82  virtual XalanDocument*
83  parseXML(
84  MemoryManagerType& theManager,
85  const XalanDOMString& urlString,
86  const XalanDOMString& base) = 0;
87 
94  virtual XalanDocument*
95  getSourceDocument(const XalanDOMString& theURI) const = 0;
96 
103  virtual void
104  setSourceDocument(
105  const XalanDOMString& theURI,
106  XalanDocument* theDocument) = 0;
107 
115  virtual const XalanDOMString&
116  findURIFromDoc(const XalanDocument* owner) const = 0;
117 
125  virtual bool
126  elementAvailable(
127  const XalanDOMString& theNamespace,
128  const XalanDOMString& elementName) const = 0;
129 
139  virtual bool
140  functionAvailable(
141  const XalanDOMString& theNamespace,
142  const XalanDOMString& functionName) const = 0;
143 
154  virtual XObjectPtr
155  extFunction(
156  XPathExecutionContext& executionContext,
157  const XalanDOMString& theNamespace,
158  const XalanDOMString& functionName,
159  XalanNode* context,
160  const XObjectArgVectorType& argVec,
161  const LocatorType* locator) const = 0;
162 
163  enum eSource { eXMLParser = 1,
164  eXSLTProcessor = 2,
165  eXPATHParser = 3,
166  eXPATHProcessor = 4,
167  eDataSource = 5 };
168 
169  enum eClassification { eMessage = 0,
170  eWarning = 1,
171  eError = 2 };
172 
189  virtual bool
190  problem(
191  eSource where,
192  eClassification classification,
193  const PrefixResolver* resolver,
194  const XalanNode* sourceNode,
195  const XalanDOMString& msg,
196  const XalanDOMChar* uri,
197  int lineNo,
198  int charOffset) const = 0;
199 
203  virtual void
204  reset() = 0;
205 
206 private:
207 
208  // These are not implemented...
209  XPathEnvSupport(const XPathEnvSupport&);
210 
211  XPathEnvSupport&
212  operator=(const XPathEnvSupport&);
213 
214  bool
215  operator==(const XPathEnvSupport&) const;
216 };
217 
218 
219 
220 XALAN_CPP_NAMESPACE_END
221 
222 
223 
224 #endif // XPATHENVSUPPORT_HEADER_GUARD_1357924680
bool operator==(const XalanVector< Type > &theLHS, const XalanVector< Type > &theRHS)
Definition: XalanVector.hpp:1111
Definition: XalanNode.hpp:44
XALAN_CPP_NAMESPACE_BEGIN typedef XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager MemoryManagerType
Definition: XalanMemoryManagement.hpp:39
Definition: XalanElement.hpp:42
Class to hold XObjectPtr return types.
Definition: XObject.hpp:584
Definition: XPathExecutionContext.hpp:72
eClassification
Definition: XPathEnvSupport.hpp:169
Local implementation of NodeRefList.
Definition: NodeRefListBase.hpp:42
Function::XObjectArgVectorType XObjectArgVectorType
Definition: XPathEnvSupport.hpp:68
Definition: XPathEnvSupport.hpp:62
XERCES_CPP_NAMESPACE_QUALIFIER Locator LocatorType
Definition: XPathEnvSupport.hpp:66
This class defines an interface for classes that resolve namespace prefixes to their URIs...
Definition: PrefixResolver.hpp:37
Class to hold XPath return types.
Definition: XObject.hpp:61
Definition: XalanDocument.hpp:51
Definition: XalanDOMString.hpp:42
#define XALAN_XPATH_EXPORT
Definition: XPathDefinitions.hpp:33
This class handles the creation of XObjects and manages their lifetime.
Definition: XObjectFactory.hpp:51
Class to represent a qualified name: "The name of an internal XSLT object, specifically a named templ...
Definition: XalanQName.hpp:68
eSource
Definition: XPathEnvSupport.hpp:163

Interpreting class diagrams

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

dot

Xalan-C++ XSLT Processor Version 1.10
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.

Apache Logo