Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

XalanMatchPatternData.hpp

Go to the documentation of this file.
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

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