SourceForge.net Logo
DOMXPathEvaluator.hpp
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 /*
19  * $Id: DOMXPathEvaluator.hpp 698579 2008-09-24 14:13:08Z borisk $
20  */
21 
22 #if !defined(XERCESC_INCLUDE_GUARD_DOMXPATHEVALUATOR_HPP)
23 #define XERCESC_INCLUDE_GUARD_DOMXPATHEVALUATOR_HPP
24 
25 #include <xercesc/util/XercesDefs.hpp>
27 
28 XERCES_CPP_NAMESPACE_BEGIN
29 
30 class DOMXPathNSResolver;
31 class DOMXPathExpression;
32 class DOMNode;
33 
47 class CDOM_EXPORT DOMXPathEvaluator
48 {
49 
50 protected:
51  // -----------------------------------------------------------------------
52  // Hidden constructors
53  // -----------------------------------------------------------------------
58 
59 private:
60  // -----------------------------------------------------------------------
61  // Unimplemented constructors and operators
62  // -----------------------------------------------------------------------
66  DOMXPathEvaluator& operator = (const DOMXPathEvaluator&);
68 
69 public:
70  // -----------------------------------------------------------------------
71  // All constructors are hidden, just the destructor is available
72  // -----------------------------------------------------------------------
79  virtual ~DOMXPathEvaluator() {};
81 
82  // -----------------------------------------------------------------------
83  // Virtual DOMXPathEvaluator interface
84  // -----------------------------------------------------------------------
87 
108  virtual DOMXPathExpression* createExpression(const XMLCh *expression,
109  const DOMXPathNSResolver *resolver) = 0;
110 
111 
125  virtual DOMXPathNSResolver* createNSResolver(const DOMNode *nodeResolver) = 0;
126 
127 
169  virtual DOMXPathResult* evaluate(const XMLCh *expression,
170  const DOMNode *contextNode,
171  const DOMXPathNSResolver *resolver,
173  DOMXPathResult* result) = 0;
174 
176 };
177 
178 XERCES_CPP_NAMESPACE_END
179 
180 #endif
The DOMNode interface is the primary datatype for the entire Document Object Model.
Definition: DOMNode.hpp:139
The DOMXPathResult interface represents the result of the evaluation of an XPath 1.0 or XPath 2.0 expression within the context of a particular node.
Definition: DOMXPathResult.hpp:46
DOMXPathEvaluator()
Definition: DOMXPathEvaluator.hpp:56
virtual ~DOMXPathEvaluator()
Destructor.
Definition: DOMXPathEvaluator.hpp:79
The evaluation of XPath expressions is provided by DOMXPathEvaluator.
Definition: DOMXPathEvaluator.hpp:47
The DOMXPathExpression interface represents a parsed and resolved XPath expression.
Definition: DOMXPathExpression.hpp:36
ResultType
Definition: DOMXPathResult.hpp:163
The DOMXPathNSResolver interface permit prefix strings in the expression to be properly bound to name...
Definition: DOMXPathNSResolver.hpp:36