Coverage Report

Created: 2026-10-01 06:55

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/xerces-c/src/xercesc/util/regx/ClosureToken.hpp
Line
Count
Source
1
/*
2
 * Licensed to the Apache Software Foundation (ASF) under one or more
3
 * contributor license agreements.  See the NOTICE file distributed with
4
 * this work for additional information regarding copyright ownership.
5
 * The ASF licenses this file to You under the Apache License, Version 2.0
6
 * (the "License"); you may not use this file except in compliance with
7
 * the License.  You may obtain a copy of the License at
8
 * 
9
 *      http://www.apache.org/licenses/LICENSE-2.0
10
 * 
11
 * Unless required by applicable law or agreed to in writing, software
12
 * distributed under the License is distributed on an "AS IS" BASIS,
13
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
 * See the License for the specific language governing permissions and
15
 * limitations under the License.
16
 */
17
18
/*
19
 * $Id: ClosureToken.hpp 678879 2008-07-22 20:05:05Z amassari $
20
 */
21
22
#if !defined(XERCESC_INCLUDE_GUARD_CLOSURETOKEN_HPP)
23
#define XERCESC_INCLUDE_GUARD_CLOSURETOKEN_HPP
24
25
// ---------------------------------------------------------------------------
26
//  Includes
27
// ---------------------------------------------------------------------------
28
#include <xercesc/util/regx/Token.hpp>
29
30
XERCES_CPP_NAMESPACE_BEGIN
31
32
class XMLUTIL_EXPORT ClosureToken : public Token {
33
public:
34
    // -----------------------------------------------------------------------
35
    //  Public Constructors and Destructor
36
    // -----------------------------------------------------------------------
37
    ClosureToken(const tokType tkType, Token* const tok
38
        , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager);
39
    ~ClosureToken();
40
41
    // -----------------------------------------------------------------------
42
    //  Getter methods
43
    // -----------------------------------------------------------------------
44
    XMLSize_t size() const;
45
    int getMin() const;
46
    int getMax() const;
47
    Token* getChild(const XMLSize_t index) const;
48
49
    // -----------------------------------------------------------------------
50
    //  Setter methods
51
    // -----------------------------------------------------------------------
52
    void setMin(const int minVal);
53
    void setMax(const int maxVal);
54
55
private:
56
    // -----------------------------------------------------------------------
57
    //  Unimplemented constructors and operators
58
    // -----------------------------------------------------------------------
59
    ClosureToken(const ClosureToken&);
60
    ClosureToken& operator=(const ClosureToken&);
61
62
    // -----------------------------------------------------------------------
63
    //  Private data members
64
    // -----------------------------------------------------------------------
65
    int    fMin;
66
    int    fMax;
67
    Token* fChild;
68
};
69
70
71
// ---------------------------------------------------------------------------
72
//  ClosureToken: getter methods
73
// ---------------------------------------------------------------------------
74
0
inline XMLSize_t ClosureToken::size() const {
75
76
0
    return 1;
77
0
}
78
79
80
16
inline int ClosureToken::getMax() const {
81
82
16
    return fMax;
83
16
}
84
85
40
inline int ClosureToken::getMin() const {
86
87
40
    return fMin;
88
40
}
89
90
24
inline Token* ClosureToken::getChild(const XMLSize_t) const {
91
92
24
    return fChild;
93
24
}
94
95
// ---------------------------------------------------------------------------
96
//  ClosureToken: setter methods
97
// ---------------------------------------------------------------------------
98
8
inline void ClosureToken::setMax(const int maxVal) {
99
100
8
    fMax = maxVal;
101
8
}
102
103
8
inline void ClosureToken::setMin(const int minVal) {
104
105
8
    fMin = minVal;
106
8
}
107
108
XERCES_CPP_NAMESPACE_END
109
110
#endif
111
112
/**
113
  * End of file ClosureToken.hpp
114
  */