Xalan-C++ API Reference 1.12.0
XNodeSetNodeProxy.hpp
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18#if !defined(XNODESETNODEPROXY_HEADER_GUARD_1357924680)
19#define XNODESETNODEPROXY_HEADER_GUARD_1357924680
20
21
22
23// Base include file. Must be first.
25
26
27
28// Base class header file.
30
31
32
34
35
36
37namespace XALAN_CPP_NAMESPACE {
38
39
40
41/**
42 * Class to hold XPath return types.
43 */
45{
46public:
47
48 /**
49 * Create an XNodeSetNodeProxy
50 */
52
53 /**
54 * Create an XNodeSetNodeProxy from another.
55 *
56 * @param source object to copy
57 */
58 XNodeSetNodeProxy(const XNodeSetNodeProxy& source, MemoryManager& theManager);
59
60 virtual
62
63 // These methods are inherited from XObject ...
64
65 virtual const NodeRefListBase&
66 nodeset() const;
67
68 virtual XalanNode*
69 item(size_type index) const;
70
71 virtual size_type
72 getLength() const;
73
74 // A proxy class to implement NodeRefListBase...
75 class Proxy : public NodeRefListBase
76 {
77 public:
78
80
81 virtual
83
84 virtual XalanNode*
85 item(size_type index) const;
86
87 virtual size_type
88 getLength() const;
89
90 virtual size_type
91 indexOf(const XalanNode* theNode) const;
92
94 };
95
96protected:
97
98 virtual eObjectType
99 getRealType() const;
100
101private:
102
103 // Not implemented...
105 operator=(const XNodeSetNodeProxy&);
107
108
109 // Data members...
110 const Proxy m_proxy;
111};
112
113
114
115}
116
117
118
119#endif // XNODESETNODEPROXY_HEADER_GUARD_1357924680
#define XALAN_XPATH_EXPORT
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
Local implementation of NodeRefList.
Class to hold XPath return types.
NodeRefListBase::size_type size_type
virtual XalanNode * item(size_type index) const
Returns the indexth item in the collection.
virtual size_type getLength() const
Determine the number of nodes in the list.
virtual size_type indexOf(const XalanNode *theNode) const
Retrieve the zero based index of the node in the list.
Class to hold XPath return types.
XNodeSetNodeProxy(const XNodeSetNodeProxy &source, MemoryManager &theManager)
Create an XNodeSetNodeProxy from another.
virtual XalanNode * item(size_type index) const
virtual size_type getLength() const
XNodeSetNodeProxy(MemoryManager &theManager, XalanNode *theNode)
Create an XNodeSetNodeProxy.
virtual const NodeRefListBase & nodeset() const
Cast result object to a nodelist.
virtual eObjectType getRealType() const
Tell what kind of class this is.
eObjectType
Enumeration of possible object types.
Definition XObject.hpp:74