Xerces-C++ 3.2.0

DOMXPathResult.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: DOMXPathResult.hpp 932889 2010-04-11 13:10:10Z borisk $
20 */
21
22 #if !defined(XERCESC_INCLUDE_GUARD_DOMXPATHRESULT_HPP)
23 #define XERCESC_INCLUDE_GUARD_DOMXPATHRESULT_HPP
24
25 #include <xercesc/util/XercesDefs.hpp>
26
27 XERCES_CPP_NAMESPACE_BEGIN
28
29 class DOMXPathNSResolver;
30 class DOMXPathExpression;
31 class DOMTypeInfo;
32 class DOMNode;
33
46 class CDOM_EXPORT DOMXPathResult
47 {
48
49 protected:
50 // -----------------------------------------------------------------------
51 // Hidden constructors
52 // -----------------------------------------------------------------------
55 DOMXPathResult() {};
57
58 private:
59 // -----------------------------------------------------------------------
60 // Unimplemented constructors and operators
61 // -----------------------------------------------------------------------
64 DOMXPathResult(const DOMXPathResult &);
65 DOMXPathResult& operator = (const DOMXPathResult&);
67
68 public:
69 // -----------------------------------------------------------------------
70 // All constructors are hidden, just the destructor is available
71 // -----------------------------------------------------------------------
78 virtual ~DOMXPathResult() {};
80
81 // -----------------------------------------------------------------------
82 // Class Types
83 // -----------------------------------------------------------------------
163 enum ResultType {
164 /* XPath 1.0 */
165 ANY_TYPE = 0,
166 NUMBER_TYPE = 1,
167 STRING_TYPE = 2,
168 BOOLEAN_TYPE = 3,
169 UNORDERED_NODE_ITERATOR_TYPE = 4,
170 ORDERED_NODE_ITERATOR_TYPE = 5,
171 UNORDERED_NODE_SNAPSHOT_TYPE = 6,
172 ORDERED_NODE_SNAPSHOT_TYPE = 7,
173 ANY_UNORDERED_NODE_TYPE = 8,
174 FIRST_ORDERED_NODE_TYPE = 9,
175 /* XPath 2.0 */
176 FIRST_RESULT_TYPE = 100,
177 ITERATOR_RESULT_TYPE = 101,
178 SNAPSHOT_RESULT_TYPE = 102
179 };
181
182
183 // -----------------------------------------------------------------------
184 // Virtual DOMXPathResult interface
185 // -----------------------------------------------------------------------
188
194 virtual ResultType getResultType() const = 0;
195
201 virtual const DOMTypeInfo *getTypeInfo() const = 0;
202
210 virtual bool isNode() const = 0;
211
222 virtual bool getBooleanValue() const = 0;
223
234 virtual int getIntegerValue() const = 0;
235
249 virtual double getNumberValue() const = 0;
250
261 virtual const XMLCh* getStringValue() const = 0;
262
277 virtual DOMNode* getNodeValue() const = 0;
278
291 virtual bool iterateNext() = 0;
292
304 virtual bool getInvalidIteratorState() const = 0;
305
319 virtual bool snapshotItem(XMLSize_t index) = 0;
320
330 virtual XMLSize_t getSnapshotLength() const = 0;
331
333
334 // -----------------------------------------------------------------------
335 // Non-standard Extension
336 // -----------------------------------------------------------------------
345 virtual void release() = 0;
347 };
348
349 XERCES_CPP_NAMESPACE_END
350
351 #endif
XercesDefs.hpp
DOMXPathExpression
The DOMXPathExpression interface represents a parsed and resolved XPath expression.
Definition: DOMXPathExpression.hpp:36
DOMXPathResult::ResultType
ResultType
Definition: DOMXPathResult.hpp:163
CDOM_EXPORT
#define CDOM_EXPORT
Definition: XercesDefs.hpp:166
XMLCh
uint16_t XMLCh
Definition: Xerces_autoconf_config.hpp:118
XERCES_CPP_NAMESPACE_BEGIN
#define XERCES_CPP_NAMESPACE_BEGIN
Definition: XercesDefs.hpp:112
XMLSize_t
size_t XMLSize_t
Definition: Xerces_autoconf_config.hpp:110
XERCES_CPP_NAMESPACE_END
#define XERCES_CPP_NAMESPACE_END
Definition: XercesDefs.hpp:113
DOMXPathResult::DOMXPathResult
DOMXPathResult()
Definition: DOMXPathResult.hpp:55
DOMNode
The DOMNode interface is the primary datatype for the entire Document Object Model.
Definition: DOMNode.hpp:139
DOMXPathNSResolver
The DOMXPathNSResolver interface permit prefix strings in the expression to be properly bound to name...
Definition: DOMXPathNSResolver.hpp:36
DOMTypeInfo
The DOMTypeInfo interface represent a type used by DOMElement or DOMAttr nodes, specified in the sche...
Definition: DOMTypeInfo.hpp:35
DOMXPathResult
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
DOMXPathResult::~DOMXPathResult
virtual ~DOMXPathResult()
Destructor.
Definition: DOMXPathResult.hpp:78