File indexing completed on 2025-12-16 10:34:30
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022 #if !defined(XERCESC_INCLUDE_GUARD_CMREPEATINGLEAF_HPP)
0023 #define XERCESC_INCLUDE_GUARD_CMREPEATINGLEAF_HPP
0024
0025 #include <xercesc/validators/common/CMLeaf.hpp>
0026
0027
0028 XERCES_CPP_NAMESPACE_BEGIN
0029
0030
0031
0032
0033 class CMRepeatingLeaf : public CMLeaf
0034 {
0035 public :
0036
0037
0038
0039 CMRepeatingLeaf
0040 (
0041 QName* const element
0042 , int minOccurs
0043 , int maxOccurs
0044 , unsigned int position
0045 , unsigned int maxStates
0046 , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager
0047 );
0048 CMRepeatingLeaf
0049 (
0050 QName* const element
0051 , int minOccurs
0052 , int maxOccurs
0053 , unsigned int position
0054 , bool adopt
0055 , unsigned int maxStates
0056 , MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager
0057 );
0058
0059
0060
0061
0062
0063 int getMinOccurs() const;
0064 int getMaxOccurs() const;
0065
0066 virtual bool isRepeatableLeaf() const;
0067
0068 private :
0069
0070
0071
0072
0073
0074
0075
0076
0077 int fMinOccurs;
0078 int fMaxOccurs;
0079
0080
0081
0082
0083 CMRepeatingLeaf(const CMRepeatingLeaf&);
0084 CMRepeatingLeaf& operator=(const CMRepeatingLeaf&);
0085 };
0086
0087
0088
0089
0090
0091 inline CMRepeatingLeaf::CMRepeatingLeaf( QName* const element
0092 , int minOccurs
0093 , int maxOccurs
0094 , unsigned int position
0095 , unsigned int maxStates
0096 , MemoryManager* const manager) :
0097 CMLeaf(element, position, maxStates, manager)
0098 , fMinOccurs(minOccurs)
0099 , fMaxOccurs(maxOccurs)
0100 {
0101 }
0102
0103 inline CMRepeatingLeaf::CMRepeatingLeaf( QName* const element
0104 , int minOccurs
0105 , int maxOccurs
0106 , unsigned int position
0107 , bool adopt
0108 , unsigned int maxStates
0109 , MemoryManager* const manager) :
0110 CMLeaf(element, position, adopt, maxStates, manager)
0111 , fMinOccurs(minOccurs)
0112 , fMaxOccurs(maxOccurs)
0113 {
0114 }
0115
0116
0117
0118
0119 inline int CMRepeatingLeaf::getMinOccurs() const
0120 {
0121 return fMinOccurs;
0122 }
0123
0124 inline int CMRepeatingLeaf::getMaxOccurs() const
0125 {
0126 return fMaxOccurs;
0127 }
0128
0129 inline bool CMRepeatingLeaf::isRepeatableLeaf() const
0130 {
0131 return true;
0132 }
0133
0134 XERCES_CPP_NAMESPACE_END
0135
0136 #endif