00001 /* 00002 * Licensed to the Apache Software Foundation (ASF) under one 00003 * or more contributor license agreements. See the NOTICE file 00004 * distributed with this work for additional information 00005 * regarding copyright ownership. The ASF licenses this file 00006 * to you under the Apache License, Version 2.0 (the "License"); 00007 * you may not use this file except in compliance with the License. 00008 * You may obtain a copy of the License at 00009 * 00010 * http://www.apache.org/licenses/LICENSE-2.0 00011 * 00012 * Unless required by applicable law or agreed to in writing, software 00013 * distributed under the License is distributed on an "AS IS" BASIS, 00014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00015 * See the License for the specific language governing permissions and 00016 * limitations under the License. 00017 */ 00018 #if !defined(EXSLT_STRINGIMPL_HEADER_GUARD_1357924680) 00019 #define EXSLT_STRINGIMPL_HEADER_GUARD_1357924680 00020 00021 00022 00023 #include "XalanEXSLTDefinitions.hpp" 00024 00025 00026 00027 #include <xalanc/PlatformSupport/XalanMessageLoader.hpp> 00028 00029 00030 00031 #include <xalanc/XPath/Function.hpp> 00032 00033 00034 00035 XALAN_CPP_NAMESPACE_BEGIN 00036 00037 00038 00039 class XALAN_EXSLT_EXPORT XalanEXSLTFunctionAlign : public Function 00040 { 00041 public: 00042 00043 typedef Function ParentType; 00044 00045 XalanEXSLTFunctionAlign() 00046 { 00047 } 00048 00049 00050 virtual 00051 ~XalanEXSLTFunctionAlign() 00052 { 00053 } 00054 00055 // These methods are inherited from Function ... 00056 00057 virtual XObjectPtr 00058 execute( 00059 XPathExecutionContext& executionContext, 00060 XalanNode* context, 00061 const XObjectArgVectorType& args, 00062 const Locator* locator) const; 00063 00064 using ParentType::execute; 00065 00066 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE) 00067 virtual Function* 00068 #else 00069 virtual XalanEXSLTFunctionAlign* 00070 #endif 00071 clone(MemoryManager& theManager) const 00072 { 00073 return XalanCopyConstruct(theManager, *this); 00074 } 00075 00076 protected: 00077 00078 const XalanDOMString& 00079 getError(XalanDOMString& theBuffer) const 00080 { 00081 return XalanMessageLoader::getMessage( 00082 theBuffer, 00083 XalanMessages::EXSLTFunctionAcceptsTwoOrThreeArguments_1Param, 00084 "align()"); 00085 } 00086 00087 private: 00088 00089 // Not implemented... 00090 XalanEXSLTFunctionAlign& 00091 operator=(const XalanEXSLTFunctionAlign&); 00092 00093 bool 00094 operator==(const XalanEXSLTFunctionAlign&) const; 00095 00096 00097 // Data members... 00098 static const XalanDOMChar s_centerString[]; 00099 static const XalanDOMChar s_rightString[]; 00100 }; 00101 00102 00103 00104 class XALAN_EXSLT_EXPORT XalanEXSLTFunctionConcat : public Function 00105 { 00106 public: 00107 00108 typedef Function ParentType; 00109 00110 XalanEXSLTFunctionConcat() : 00111 Function() 00112 { 00113 } 00114 00115 virtual 00116 ~XalanEXSLTFunctionConcat() 00117 { 00118 } 00119 00120 // These methods are inherited from Function ... 00121 00122 virtual XObjectPtr 00123 execute( 00124 XPathExecutionContext& executionContext, 00125 XalanNode* context, 00126 const XObjectArgVectorType& args, 00127 const Locator* locator) const; 00128 00129 using ParentType::execute; 00130 00131 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE) 00132 virtual Function* 00133 #else 00134 virtual XalanEXSLTFunctionConcat* 00135 #endif 00136 clone(MemoryManager& theManager) const 00137 { 00138 return XalanCopyConstruct(theManager, *this); 00139 } 00140 00141 protected: 00142 00143 const XalanDOMString& 00144 getError(XalanDOMString& theBuffer) const 00145 { 00146 return XalanMessageLoader::getMessage( 00147 theBuffer, 00148 XalanMessages::EXSLTFunctionAcceptsOneArgument_1Param, 00149 "concat()"); 00150 } 00151 00152 private: 00153 00154 // Not implemented... 00155 XalanEXSLTFunctionConcat& 00156 operator=(const XalanEXSLTFunctionConcat&); 00157 00158 bool 00159 operator==(const XalanEXSLTFunctionConcat&) const; 00160 }; 00161 00162 00163 00164 class XALAN_EXSLT_EXPORT XalanEXSLTFunctionPadding : public Function 00165 { 00166 public: 00167 00168 typedef Function ParentType; 00169 00170 XalanEXSLTFunctionPadding(MemoryManager& theManager) : 00171 Function(), 00172 m_space(s_spaceString, theManager) 00173 { 00174 } 00175 00176 // A dummy constructor for use internally. Do not use this one!!!! 00177 XalanEXSLTFunctionPadding( 00178 MemoryManager& theManager, 00179 int /* theDummy */) : 00180 Function(), 00181 m_space(theManager) 00182 { 00183 } 00184 00185 XalanEXSLTFunctionPadding( 00186 const XalanEXSLTFunctionPadding& other, 00187 MemoryManager& theManager) : 00188 Function(other), 00189 m_space(s_spaceString, theManager) 00190 { 00191 } 00192 00193 virtual 00194 ~XalanEXSLTFunctionPadding() 00195 { 00196 } 00197 00198 // These methods are inherited from Function ... 00199 00200 virtual XObjectPtr 00201 execute( 00202 XPathExecutionContext& executionContext, 00203 XalanNode* context, 00204 const XObjectArgVectorType& args, 00205 const Locator* locator) const; 00206 00207 using ParentType::execute; 00208 00209 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE) 00210 virtual Function* 00211 #else 00212 virtual XalanEXSLTFunctionPadding* 00213 #endif 00214 clone(MemoryManager& theManager) const 00215 { 00216 return XalanCopyConstruct(theManager, *this, theManager); 00217 } 00218 00219 protected: 00220 00221 const XalanDOMString& 00222 getError(XalanDOMString& theBuffer) const 00223 { 00224 return XalanMessageLoader::getMessage( 00225 theBuffer, 00226 XalanMessages::EXSLTFunctionAccepts1Or2Argument_1Param, 00227 "padding()"); 00228 } 00229 00230 private: 00231 00232 // Not implemented... 00233 XalanEXSLTFunctionPadding(const XalanEXSLTFunctionPadding&); 00234 00235 XalanEXSLTFunctionPadding& 00236 operator=(const XalanEXSLTFunctionPadding&); 00237 00238 bool 00239 operator==(const XalanEXSLTFunctionPadding&) const; 00240 00241 00242 // Data members... 00243 const XalanDOMString m_space; 00244 00245 static const XalanDOMChar s_spaceString[]; 00246 }; 00247 00248 00249 class XALAN_EXSLT_EXPORT XalanEXSLTFunctionEncodeURI : public Function 00250 { 00251 public: 00252 00253 typedef Function ParentType; 00254 00255 XalanEXSLTFunctionEncodeURI() : 00256 Function() 00257 { 00258 } 00259 00260 virtual 00261 ~XalanEXSLTFunctionEncodeURI() 00262 { 00263 } 00264 00265 // These methods are inherited from Function ... 00266 00267 virtual XObjectPtr 00268 execute( 00269 XPathExecutionContext& executionContext, 00270 XalanNode* context, 00271 const XObjectArgVectorType& args, 00272 const Locator* locator) const; 00273 00274 using ParentType::execute; 00275 00276 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE) 00277 virtual Function* 00278 #else 00279 virtual XalanEXSLTFunctionEncodeURI* 00280 #endif 00281 clone(MemoryManager& theManager) const 00282 { 00283 return XalanCopyConstruct(theManager, *this); 00284 } 00285 00286 protected: 00287 00288 const XalanDOMString& 00289 getError(XalanDOMString& theBuffer) const 00290 { 00291 return XalanMessageLoader::getMessage( 00292 theBuffer, 00293 XalanMessages::EXSLTFunctionAcceptsTwoOrThreeArguments_1Param, 00294 "encode-uri()"); 00295 } 00296 00297 const XalanDOMString& 00298 escapedOctet( 00299 XalanDOMChar theChar, 00300 XalanDOMString& theBuffer) const; 00301 00302 static const XalanDOMChar s_reservedChars[]; 00303 static const XalanDOMString::size_type s_reservedCharsSize; 00304 00305 static const XalanDOMChar s_excludedChars[]; 00306 static const XalanDOMString::size_type s_excludedCharsSize; 00307 00308 private: 00309 00310 // Not implemented... 00311 XalanEXSLTFunctionEncodeURI& 00312 operator=(const XalanEXSLTFunctionEncodeURI&); 00313 00314 bool 00315 operator==(const XalanEXSLTFunctionEncodeURI&) const; 00316 }; 00317 00318 00319 00320 class XALAN_EXSLT_EXPORT XalanEXSLTFunctionDecodeURI : public Function 00321 { 00322 public: 00323 00324 typedef Function ParentType; 00325 00326 XalanEXSLTFunctionDecodeURI() : 00327 Function() 00328 { 00329 } 00330 00331 virtual 00332 ~XalanEXSLTFunctionDecodeURI() 00333 { 00334 } 00335 00336 // These methods are inherited from Function ... 00337 00338 virtual XObjectPtr 00339 execute( 00340 XPathExecutionContext& executionContext, 00341 XalanNode* context, 00342 const XObjectArgVectorType& args, 00343 const Locator* locator) const; 00344 00345 using ParentType::execute; 00346 00347 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE) 00348 virtual Function* 00349 #else 00350 virtual XalanEXSLTFunctionDecodeURI* 00351 #endif 00352 clone(MemoryManager& theManager) const 00353 { 00354 return XalanCopyConstruct(theManager, *this); 00355 } 00356 00357 protected: 00358 00359 const XalanDOMString& 00360 getError(XalanDOMString& theBuffer) const 00361 { 00362 return XalanMessageLoader::getMessage( 00363 theBuffer, 00364 XalanMessages::EXSLTFunctionAccepts1Or2Argument_1Param, 00365 "decode-uri()"); 00366 00367 } 00368 00369 XalanDOMChar 00370 hexCharsToByte( 00371 XPathExecutionContext& executionContext, 00372 XalanNode* context, 00373 const Locator* locator, 00374 const XalanDOMChar highHexChar, 00375 const XalanDOMChar lowHexChar) const; 00376 00377 static const XalanDOMString::size_type s_octetSize; 00378 00379 private: 00380 00381 // Not implemented... 00382 XalanEXSLTFunctionDecodeURI& 00383 operator=(const XalanEXSLTFunctionDecodeURI&); 00384 00385 bool 00386 operator==(const XalanEXSLTFunctionDecodeURI&) const; 00387 }; 00388 00389 XALAN_CPP_NAMESPACE_END 00390 00391 00392 00393 #endif // EXSLT_STRINGIMPL_HEADER_GUARD_1357924680
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
Xalan-C++ XSLT Processor Version 1.11 |
|