Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

XNodeSetBase.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(XNODESETBASE_HEADER_GUARD_1357924680)
17 #define XNODESETBASE_HEADER_GUARD_1357924680
18 
19 
20 
21 // Base include file. Must be first.
23 
24 
25 
26 // Base class header file.
27 #include <xalanc/XPath/XObject.hpp>
28 
29 
30 
33 
34 
35 
36 XALAN_CPP_NAMESPACE_BEGIN
37 
38 
39 
44 {
45 public:
46 
48 
49  virtual
50  ~XNodeSetBase();
51 
54  {
55  return m_cachedStringValue.getMemoryManager();
56  }
57 
58  // These methods are inherited from XObject ...
59 
60 
61  virtual const XalanDOMString&
62  getTypeString() const;
63 
64  virtual double
65  num() const;
66 
67  virtual bool
68  boolean() const;
69 
70  virtual const XalanDOMString&
71  str() const;
72 
73  virtual void
74  str(
75  FormatterListener& formatterListener,
76  MemberFunctionPtr function) const;
77 
78  virtual void
79  str(XalanDOMString& theBuffer) const;
80 
81  virtual double
82  stringLength() const;
83 
84  virtual const XalanDocumentFragment&
85  rtree() const;
86 
87  virtual const NodeRefListBase&
88  nodeset() const = 0;
89 
90  virtual void
92 
93  virtual void
94  ProcessXObjectTypeCallback(XObjectTypeCallback& theCallbackObject) const;
95 
96  virtual XalanNode*
97  item(size_type index) const = 0;
98 
99  virtual size_type
100  getLength() const = 0;
101 
102 protected:
103 
107  XNodeSetBase(MemoryManagerType& theManager);
108 
114  XNodeSetBase(const XNodeSetBase& source, MemoryManagerType& theManager);
115 
116  void
117  clearCachedValues();
118 
119 private:
120 
121  // Not implemented...
122  XNodeSetBase();
123  XNodeSetBase(const XNodeSetBase&);
124  XNodeSetBase&
125  operator=(const XNodeSetBase&);
126 
127  // Data members...
129 
130  mutable XalanDOMString m_cachedStringValue;
131 
132  mutable double m_cachedNumberValue;
133 };
134 
135 
136 
137 XALAN_CPP_NAMESPACE_END
138 
139 
140 
141 #endif // XNODESETBASE_HEADER_GUARD_1357924680
Definition: XalanNode.hpp:44
The purpose of this class is to provide a way to get the "preferred" or closest matching type for XOb...
Definition: XObjectTypeCallback.hpp:51
XALAN_CPP_NAMESPACE_BEGIN typedef XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager MemoryManagerType
Definition: XalanMemoryManagement.hpp:39
virtual const NodeRefListBase & nodeset() const
Cast result object to a nodelist.
virtual void ProcessXObjectTypeCallback(XObjectTypeCallback &theCallbackObject)=0
Process a callback request for preferred type information.
Definition: XalanDocumentFragment.hpp:38
virtual bool boolean() const
Cast result object to a boolean.
Definition: XNodeSetResultTreeFragProxy.hpp:38
virtual const XalanDOMString & getTypeString() const =0
Given a request type, return the equivalent string.
Local implementation of NodeRefList.
Definition: NodeRefListBase.hpp:42
A SAX-based formatter interface for the XSL processor.
Definition: FormatterListener.hpp:62
virtual double num() const
Cast result object to a number.
XALAN_CPP_NAMESPACE_BEGIN typedef size_t size_type
Definition: XalanMap.hpp:44
Class to hold XPath return types.
Definition: XObject.hpp:61
unsigned int size_type
Definition: NodeRefListBase.hpp:56
virtual const XalanDocumentFragment & rtree() const
Cast result object to a result tree fragment.
virtual double stringLength() const =0
Get the length of the string value of the instance.
NodeRefListBase::size_type size_type
Definition: XNodeSetBase.hpp:47
Definition: XalanDOMString.hpp:42
virtual const XalanDOMString & str() const
Cast result object to a string.
Class to hold XPath return types.
Definition: XNodeSetBase.hpp:43
#define XALAN_XPATH_EXPORT
Definition: XPathDefinitions.hpp:33
MemoryManagerType & getMemoryManager() const
Definition: XNodeSetBase.hpp:53

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