00001 /* 00002 * Copyright 1999-2004 The Apache Software Foundation. 00003 * 00004 * Licensed under the Apache License, Version 2.0 (the "License"); 00005 * you may not use this file except in compliance with the License. 00006 * You may obtain a copy of the License at 00007 * 00008 * http://www.apache.org/licenses/LICENSE-2.0 00009 * 00010 * Unless required by applicable law or agreed to in writing, software 00011 * distributed under the License is distributed on an "AS IS" BASIS, 00012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00013 * See the License for the specific language governing permissions and 00014 * limitations under the License. 00015 */ 00016 00017 #if !defined(XALAN_MATCHPATTERNDATA_HEADER_GUARD) 00018 #define XALAN_MATCHPATTERNDATA_HEADER_GUARD 00019 00020 00021 00022 // Base include file. Must be first. 00023 #include "xalanc/XSLT/XSLTDefinitions.hpp" 00024 00025 00026 00027 #include <cstddef> 00028 00029 00030 00031 #include "xalanc/XalanDOM/XalanDOMString.hpp" 00032 00033 00034 00035 #include "xalanc/XPath/XPath.hpp" 00036 00037 00038 00039 XALAN_CPP_NAMESPACE_BEGIN 00040 00041 00042 class ElemTemplate; 00043 00044 00045 00050 class XALAN_XSLT_EXPORT XalanMatchPatternData 00051 { 00052 00053 public: 00054 00055 typedef XPath::eMatchScore eMatchScore; 00056 00057 #if defined(XALAN_STRICT_ANSI_HEADERS) 00058 typedef std::size_t size_type; 00059 #else 00060 typedef size_t size_type; 00061 #endif 00062 00063 00074 XalanMatchPatternData( 00075 MemoryManagerType& theManager, 00076 const ElemTemplate& theTemplate, 00077 size_type thePosition, 00078 const XalanDOMString& theTargetString, 00079 const XPath& theMatchPattern, 00080 const XalanDOMString& thePatternString, 00081 eMatchScore thePriority) : 00082 m_template(&theTemplate), 00083 m_position(thePosition), 00084 m_targetString(theTargetString, theManager), 00085 m_matchPattern(&theMatchPattern), 00086 m_pattern(&thePatternString), 00087 m_priority(thePriority) 00088 { 00089 } 00090 00091 ~XalanMatchPatternData() 00092 { 00093 } 00094 00100 const XalanDOMString& 00101 getTargetString() const 00102 { 00103 return m_targetString; 00104 } 00105 00111 const XPath* 00112 getExpression() const 00113 { 00114 return m_matchPattern; 00115 } 00116 00122 size_type 00123 getPosition() const 00124 { 00125 return m_position; 00126 } 00127 00133 const XalanDOMString* 00134 getPattern() const 00135 { 00136 return m_pattern; 00137 } 00138 00144 const ElemTemplate* 00145 getTemplate() const 00146 { 00147 return m_template; 00148 } 00149 00150 eMatchScore 00151 getDefaultPriority() const 00152 { 00153 return m_priority; 00154 } 00155 00156 double 00157 getPriorityOrDefault() const; 00158 00159 private: 00160 // not implemented 00161 XalanMatchPatternData(); 00162 XalanMatchPatternData( const XalanMatchPatternData&); 00163 00164 const ElemTemplate* m_template; 00165 00166 size_type m_position; 00167 00168 XalanDOMString m_targetString; 00169 00170 const XPath* m_matchPattern; 00171 00172 const XalanDOMString* m_pattern; 00173 00174 eMatchScore m_priority; 00175 }; 00176 00177 00178 00179 XALAN_CPP_NAMESPACE_END 00180 00181 00182 00183 #endif // XALAN_MATCHPATTERNDATA_HEADER_GUARD
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
Xalan-C++ XSLT Processor Version 1.10 |
|