Xerces-C++ 3.3.0

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$
20 */
21
22#if !defined(XERCESC_INCLUDE_GUARD_DOMXPATHEVALUATOR_HPP)
23#define XERCESC_INCLUDE_GUARD_DOMXPATHEVALUATOR_HPP
24
25#include <xercesc/util/XercesDefs.hpp>
26#include <xercesc/dom/DOMXPathResult.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 // -----------------------------------------------------------------------
56 DOMXPathEvaluator() {};
58
59 private:
60 // -----------------------------------------------------------------------
61 // Unimplemented constructors and operators
62 // -----------------------------------------------------------------------
65 DOMXPathEvaluator(const DOMXPathEvaluator &);
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,
172 DOMXPathResult::ResultType type,
173 DOMXPathResult* result) = 0;
174
176};
177
178 XERCES_CPP_NAMESPACE_END
179
180#endif
DOMXPathResult.hpp
XercesDefs.hpp
CDOM_EXPORT
#define CDOM_EXPORT
Definition XercesDefs.hpp:166
XERCES_CPP_NAMESPACE_BEGIN
#define XERCES_CPP_NAMESPACE_BEGIN
Definition XercesDefs.hpp:112
XERCES_CPP_NAMESPACE_END
#define XERCES_CPP_NAMESPACE_END
Definition XercesDefs.hpp:113
XMLCh
char16_t XMLCh
Definition Xerces_autoconf_config.hpp:120
DOMNode
The DOMNode interface is the primary datatype for the entire Document Object Model.
Definition DOMNode.hpp:139
DOMXPathEvaluator
The evaluation of XPath expressions is provided by DOMXPathEvaluator.
Definition DOMXPathEvaluator.hpp:48
DOMXPathEvaluator::evaluate
virtual DOMXPathResult * evaluate(const XMLCh *expression, const DOMNode *contextNode, const DOMXPathNSResolver *resolver, DOMXPathResult::ResultType type, DOMXPathResult *result)=0
Evaluates an XPath expression string and returns a result of the specified type if possible.
DOMXPathEvaluator::~DOMXPathEvaluator
virtual ~DOMXPathEvaluator()
Destructor.
Definition DOMXPathEvaluator.hpp:79
DOMXPathEvaluator::createNSResolver
virtual DOMXPathNSResolver * createNSResolver(const DOMNode *nodeResolver)=0
Adapts any DOM node to resolve namespaces so that an XPath expression can be easily evaluated relativ...
DOMXPathEvaluator::createExpression
virtual DOMXPathExpression * createExpression(const XMLCh *expression, const DOMXPathNSResolver *resolver)=0
Creates a parsed XPath expression with resolved namespaces.
DOMXPathEvaluator::DOMXPathEvaluator
DOMXPathEvaluator()
Definition DOMXPathEvaluator.hpp:56
DOMXPathExpression
The DOMXPathExpression interface represents a parsed and resolved XPath expression.
Definition DOMXPathExpression.hpp:37
DOMXPathNSResolver
The DOMXPathNSResolver interface permit prefix strings in the expression to be properly bound to name...
Definition DOMXPathNSResolver.hpp:37
DOMXPathResult
The DOMXPathResult interface represents the result of the evaluation of an XPath 1....
Definition DOMXPathResult.hpp:47
DOMXPathResult::ResultType
ResultType
Definition DOMXPathResult.hpp:163