1 /****************************************************************************
2 **
3 ** Copyright (C) 2016 The Qt Company Ltd.
4 ** Contact: https://www.qt.io/licensing/
5 **
6 ** This file is part of the QtXmlPatterns module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and The Qt Company. For licensing terms
14 ** and conditions see https://www.qt.io/terms-conditions. For further
15 ** information use the contact form at https://www.qt.io/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 3 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL3 included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 3 requirements
23 ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24 **
25 ** GNU General Public License Usage
26 ** Alternatively, this file may be used under the terms of the GNU
27 ** General Public License version 2.0 or (at your option) the GNU General
28 ** Public license version 3 or any later version approved by the KDE Free
29 ** Qt Foundation. The licenses are as published by the Free Software
30 ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31 ** included in the packaging of this file. Please review the following
32 ** information to ensure the GNU General Public License requirements will
33 ** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34 ** https://www.gnu.org/licenses/gpl-3.0.html.
35 **
36 ** $QT_END_LICENSE$
37 **
38 ****************************************************************************/
39 
40 //
41 //  W A R N I N G
42 //  -------------
43 //
44 // This file is not part of the Qt API.  It exists purely as an
45 // implementation detail.  This header file may change from version to
46 // version without notice, or even be removed.
47 //
48 // We mean it.
49 //
50 
51 /* NOTE: This file is AUTO GENERATED by qautomaton2cpp.xsl. */
52 
53 #ifndef QPatternist_XsdSchemaToken_h
54 #define QPatternist_XsdSchemaToken_h
55 
56 #include <QtCore/QString>
57 
58 QT_BEGIN_NAMESPACE
59 
60 class XsdSchemaToken
61                 {
62                 public:
63                 enum NodeName
64 
65                 {
66                 NoKeyword,
67 Abstract,
68 All,
69 Alternative,
70 Annotation,
71 Any,
72 AnyAttribute,
73 Appinfo,
74 AppliesToEmpty,
75 Assert,
76 Assertion,
77 Attribute,
78 AttributeFormDefault,
79 AttributeGroup,
80 Base,
81 Block,
82 BlockDefault,
83 Choice,
84 Collapse,
85 ComplexContent,
86 ComplexType,
87 Default,
88 DefaultAttributes,
89 DefaultAttributesApply,
90 DefaultOpenContent,
91 Documentation,
92 Element,
93 ElementFormDefault,
94 Enumeration,
95 Extension,
96 Field,
97 Final,
98 FinalDefault,
99 Fixed,
100 Form,
101 FractionDigits,
102 Group,
103 Id,
104 Import,
105 Include,
106 ItemType,
107 Key,
108 Keyref,
109 Length,
110 List,
111 MaxExclusive,
112 MaxInclusive,
113 MaxLength,
114 MaxOccurs,
115 MemberTypes,
116 MinExclusive,
117 MinInclusive,
118 MinLength,
119 MinOccurs,
120 Mixed,
121 Mode,
122 Name,
123 Namespace,
124 Nillable,
125 NotNamespace,
126 NotQName,
127 Notation,
128 OpenContent,
129 Override,
130 Pattern,
131 Preserve,
132 ProcessContents,
133 Public,
134 Redefine,
135 Ref,
136 Refer,
137 Replace,
138 Restriction,
139 Schema,
140 SchemaLocation,
141 Selector,
142 Sequence,
143 SimpleContent,
144 SimpleType,
145 Source,
146 SubstitutionGroup,
147 System,
148 TargetNamespace,
149 Test,
150 TotalDigits,
151 Type,
152 Union,
153 Unique,
154 Use,
155 Value,
156 Version,
157 WhiteSpace,
158 XML_NS_SCHEMA_URI,
159 XPathDefaultNamespace,
160 XmlLanguage,
161 Xpath
162                 };
163 
164                 static inline NodeName toToken(const QString &value);
165 static inline NodeName toToken(const QStringRef &value);
166 static NodeName toToken(const QChar *data, int length);
167 static QString toString(NodeName token);
168 
169 
170                 private:
171                     static inline NodeName classifier2(const QChar *data);
172 static inline NodeName classifier3(const QChar *data);
173 static inline NodeName classifier4(const QChar *data);
174 static inline NodeName classifier5(const QChar *data);
175 static inline NodeName classifier6(const QChar *data);
176 static inline NodeName classifier7(const QChar *data);
177 static inline NodeName classifier8(const QChar *data);
178 static inline NodeName classifier9(const QChar *data);
179 static inline NodeName classifier10(const QChar *data);
180 static inline NodeName classifier11(const QChar *data);
181 static inline NodeName classifier12(const QChar *data);
182 static inline NodeName classifier13(const QChar *data);
183 static inline NodeName classifier14(const QChar *data);
184 static inline NodeName classifier15(const QChar *data);
185 static inline NodeName classifier17(const QChar *data);
186 static inline NodeName classifier18(const QChar *data);
187 static inline NodeName classifier20(const QChar *data);
188 static inline NodeName classifier21(const QChar *data);
189 static inline NodeName classifier22(const QChar *data);
190 static inline NodeName classifier32(const QChar *data);
191 
192                 };
193 
toToken(const QString & value)194                 inline XsdSchemaToken::NodeName XsdSchemaToken::toToken(const QString &value)
195                 {
196                     return toToken(value.constData(), value.length());
197                 }
198 
toToken(const QStringRef & value)199                 inline XsdSchemaToken::NodeName XsdSchemaToken::toToken(const QStringRef &value)
200                 {
201                     return toToken(value.constData(), value.length());
202                 }
203 
204 
205 QT_END_NAMESPACE
206 
207 #endif
208