Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

Function.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(FUNCTION_HEADER_GUARD_1357924680)
17 #define FUNCTION_HEADER_GUARD_1357924680
18 
19 
20 
21 // Base header file. Must be first.
23 
25 
26 
27 #include <vector>
28 
29 
30 
31 #include <xalanc/XPath/XObject.hpp>
33 
34 
35 XALAN_DECLARE_XERCES_CLASS(Locator)
36 
37 
38 
39 XALAN_CPP_NAMESPACE_BEGIN
40 
41 
42 
43 class XalanNode;
44 
45 
46 
47 // Base class for all XPath function classes.
48 //
49 // These are all inline, even though
50 // there are virtual functions, because we expect that they will only be
51 // needed by the XPath class.
53 {
54 public:
55 
56  typedef XERCES_CPP_NAMESPACE_QUALIFIER Locator LocatorType;
57 
58  explicit
59  Function();
60 
61  virtual
62  ~Function();
63 
65 
80  virtual XObjectPtr
81  execute(
82  XPathExecutionContext& executionContext,
83  XalanNode* context,
84  const XObjectArgVectorType& args,
85  const LocatorType* locator) const;
86 
96  virtual XObjectPtr
97  execute(
98  XPathExecutionContext& executionContext,
99  XalanNode* context,
100  const LocatorType* locator) const;
101 
112  virtual XObjectPtr
113  execute(
114  XPathExecutionContext& executionContext,
115  XalanNode* context,
116  const XObjectPtr arg,
117  const LocatorType* locator) const;
118 
130  virtual XObjectPtr
131  execute(
132  XPathExecutionContext& executionContext,
133  XalanNode* context,
134  const XObjectPtr arg1,
135  const XObjectPtr arg2,
136  const LocatorType* locator) const;
137 
150  virtual XObjectPtr
151  execute(
152  XPathExecutionContext& executionContext,
153  XalanNode* context,
154  const XObjectPtr arg1,
155  const XObjectPtr arg2,
156  const XObjectPtr arg3,
157  const LocatorType* locator) const;
158 
164  virtual Function*
165  clone(MemoryManagerType& theManager) const = 0;
166 
167 protected:
168 
176  virtual const XalanDOMString&
177  getError(XalanDOMString& theBuffer) const = 0;
178 
179 private:
180 
181  // Not implemented...
182  Function&
183  operator=(const Function&);
184 
185  bool
186  operator==(const Function&) const;
187 };
188 
189 
190 
191 XALAN_CPP_NAMESPACE_END
192 
193 
194 
195 #endif // FUNCTION_HEADER_GUARD_1357924680

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