## Xalan-C++ API Documentation

### The Xalan C++ XSLT Processor Version 1.9

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

# 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.

Xalan-C++ XSLT Processor Version 1.9 Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.