1 /****************************************************************************
2 **
3 ** Copyright (C) 2016 The Qt Company Ltd.
4 ** Contact: https://www.qt.io/licensing/
5 **
6 ** This file is part of Qt Creator.
7 **
8 ** Commercial License Usage
9 ** Licensees holding valid commercial Qt licenses may use this file in
10 ** accordance with the commercial license agreement provided with the
11 ** Software or, alternatively, in accordance with the terms contained in
12 ** a written agreement between you and The Qt Company. For licensing terms
13 ** and conditions see https://www.qt.io/terms-conditions. For further
14 ** information use the contact form at https://www.qt.io/contact-us.
15 **
16 ** GNU General Public License Usage
17 ** Alternatively, this file may be used under the terms of the GNU
18 ** General Public License version 3 as published by the Free Software
19 ** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
20 ** included in the packaging of this file. Please review the following
21 ** information to ensure the GNU General Public License requirements will
22 ** be met: https://www.gnu.org/licenses/gpl-3.0.html.
23 **
24 ****************************************************************************/
25 
26 //
27 //  W A R N I N G
28 //  -------------
29 //
30 // Main parts of this file are generated by "cplusplus-keywordgen".
31 // Use the tool to update new keywords/identifiers:
32 //
33 //  1. Update the input file cppdoxygen.kwgen with new keywords/identifiers.
34 //  2. Run the tool with the input file:
35 //       $ INPUT_FILE=${QTC_SOURCE}/src/plugins/cpptools/cppdoxygen.kwgen
36 //       $ OUTPUT_FILE=/tmp/new.cpp
37 //       $ TOOL=${QTC_BUILD}/bin/cplusplus-keywordgen
38 //       $ cat $INPUT_FILE | $TOOL > $OUTPUT_FILE
39 //  3. Copy over the classify* functions from $OUTPUT_FILE to this file,
40 //     update the doxy_token_spell array in this file and the enums in the
41 //     header.
42 //
43 
44 #include "cppdoxygen.h"
45 
46 #include <QString>
47 
48 using namespace CppTools;
49 
50 /*
51   TODO:
52     ~
53     @
54     $
55     \
56     #
57     f[
58     f]
59     f$
60 */
61 
62 static const char *doxy_token_spell[] = {
63     "identifier",
64 
65     "a",
66     "abstract",
67     "addindex",
68     "addtogroup",
69     "anchor",
70     "annotatedlist",
71     "arg",
72     "attention",
73     "author",
74     "authors",
75     "b",
76     "badcode",
77     "basename",
78     "bold",
79     "brief",
80     "bug",
81     "c",
82     "callergraph",
83     "callgraph",
84     "caption",
85     "category",
86     "chapter",
87     "cite",
88     "class",
89     "code",
90     "codeline",
91     "compat",
92     "cond",
93     "contentspage",
94     "copybrief",
95     "copydetails",
96     "copydoc",
97     "copyright",
98     "corelib",
99     "date",
100     "def",
101     "default",
102     "defgroup",
103     "deprecated",
104     "details",
105     "diafile",
106     "dir",
107     "div",
108     "docbookonly",
109     "dontinclude",
110     "dot",
111     "dotfile",
112     "dots",
113     "e",
114     "else",
115     "elseif",
116     "em",
117     "endabstract",
118     "endchapter",
119     "endcode",
120     "endcond",
121     "enddocbookonly",
122     "enddot",
123     "endfootnote",
124     "endhtmlonly",
125     "endif",
126     "endinternal",
127     "endlatexonly",
128     "endlegalese",
129     "endlink",
130     "endlist",
131     "endmanonly",
132     "endmsc",
133     "endomit",
134     "endparblock",
135     "endpart",
136     "endquotation",
137     "endraw",
138     "endrtfonly",
139     "endsecreflist",
140     "endsection1",
141     "endsection2",
142     "endsection3",
143     "endsection4",
144     "endsidebar",
145     "endtable",
146     "enduml",
147     "endverbatim",
148     "endxmlonly",
149     "enum",
150     "example",
151     "exception",
152     "exceptions",
153     "expire",
154     "extends",
155     "externalpage",
156     "file",
157     "fn",
158     "footnote",
159     "generatelist",
160     "granularity",
161     "group",
162     "gui",
163     "header",
164     "headerfile",
165     "hidecallergraph",
166     "hidecallgraph",
167     "hideinitializer",
168     "htmlinclude",
169     "htmlonly",
170     "i",
171     "idlexcept",
172     "if",
173     "ifnot",
174     "image",
175     "implements",
176     "include",
177     "includelineno",
178     "index",
179     "indexpage",
180     "ingroup",
181     "inheaderfile",
182     "inherits",
183     "inlineimage",
184     "inmodule",
185     "inpublicgroup",
186     "inqmlmodule",
187     "instantiates",
188     "interface",
189     "internal",
190     "invariant",
191     "keyword",
192     "l",
193     "latexinclude",
194     "latexonly",
195     "legalese",
196     "li",
197     "line",
198     "link",
199     "list",
200     "macro",
201     "mainclass",
202     "mainpage",
203     "manonly",
204     "memberof",
205     "meta",
206     "module",
207     "msc",
208     "mscfile",
209     "n",
210     "name",
211     "namespace",
212     "network",
213     "newcode",
214     "nextpage",
215     "noautolist",
216     "nonreentrant",
217     "nosubgrouping",
218     "note",
219     "o",
220     "obsolete",
221     "oldcode",
222     "omit",
223     "omitvalue",
224     "only",
225     "opengl",
226     "overload",
227     "p",
228     "package",
229     "page",
230     "par",
231     "paragraph",
232     "param",
233     "parblock",
234     "part",
235     "post",
236     "pre",
237     "preliminary",
238     "previouspage",
239     "printline",
240     "printto",
241     "printuntil",
242     "private",
243     "privatesection",
244     "property",
245     "protected",
246     "protectedsection",
247     "protocol",
248     "public",
249     "publicsection",
250     "pure",
251     "qmlabstract",
252     "qmlattachedproperty",
253     "qmlattachedsignal",
254     "qmlbasictype",
255     "qmlclass",
256     "qmlmethod",
257     "qmlmodule",
258     "qmlproperty",
259     "qmlsignal",
260     "qmltype",
261     "qt3support",
262     "qtestlib",
263     "quotation",
264     "quotefile",
265     "quotefromfile",
266     "quotefunction",
267     "raw",
268     "reentrant",
269     "ref",
270     "refitem",
271     "reimp",
272     "related",
273     "relatedalso",
274     "relates",
275     "relatesalso",
276     "remark",
277     "remarks",
278     "result",
279     "return",
280     "returns",
281     "retval",
282     "row",
283     "rtfonly",
284     "sa",
285     "secreflist",
286     "section",
287     "section1",
288     "section2",
289     "section3",
290     "section4",
291     "see",
292     "service",
293     "short",
294     "showinitializer",
295     "sidebar",
296     "since",
297     "skip",
298     "skipline",
299     "skipto",
300     "skipuntil",
301     "snippet",
302     "span",
303     "sql",
304     "startpage",
305     "startuml",
306     "struct",
307     "sub",
308     "subpage",
309     "subsection",
310     "subsubsection",
311     "subtitle",
312     "sup",
313     "svg",
314     "table",
315     "tableofcontents",
316     "target",
317     "test",
318     "threadsafe",
319     "throw",
320     "throws",
321     "title",
322     "todo",
323     "tparam",
324     "tt",
325     "typedef",
326     "uicontrol",
327     "uitools",
328     "underline",
329     "unicode",
330     "union",
331     "until",
332     "value",
333     "var",
334     "variable",
335     "verbatim",
336     "verbinclude",
337     "version",
338     "vhdlflow",
339     "warning",
340     "weakgroup",
341     "webkit",
342     "xml",
343     "xmlonly",
344     "xrefitem",
345 };
346 
doxygenTagSpell(int index)347 const char *CppTools::doxygenTagSpell(int index)
348 { return doxy_token_spell[index]; }
349 
classify1(const QChar * s)350 static inline int classify1(const QChar *s) {
351   if (s[0].unicode() == 'a') {
352     return T_DOXY_A;
353   }
354   else if (s[0].unicode() == 'b') {
355     return T_DOXY_B;
356   }
357   else if (s[0].unicode() == 'c') {
358     return T_DOXY_C;
359   }
360   else if (s[0].unicode() == 'e') {
361     return T_DOXY_E;
362   }
363   else if (s[0].unicode() == 'i') {
364     return T_DOXY_I;
365   }
366   else if (s[0].unicode() == 'l') {
367     return T_DOXY_L;
368   }
369   else if (s[0].unicode() == 'n') {
370     return T_DOXY_N;
371   }
372   else if (s[0].unicode() == 'o') {
373     return T_DOXY_O;
374   }
375   else if (s[0].unicode() == 'p') {
376     return T_DOXY_P;
377   }
378   return T_DOXY_IDENTIFIER;
379 }
380 
classify2(const QChar * s)381 static inline int classify2(const QChar *s) {
382   if (s[0].unicode() == 'e') {
383     if (s[1].unicode() == 'm') {
384       return T_DOXY_EM;
385     }
386   }
387   else if (s[0].unicode() == 'f') {
388     if (s[1].unicode() == 'n') {
389       return T_DOXY_FN;
390     }
391   }
392   else if (s[0].unicode() == 'i') {
393     if (s[1].unicode() == 'f') {
394       return T_DOXY_IF;
395     }
396   }
397   else if (s[0].unicode() == 'l') {
398     if (s[1].unicode() == 'i') {
399       return T_DOXY_LI;
400     }
401   }
402   else if (s[0].unicode() == 's') {
403     if (s[1].unicode() == 'a') {
404       return T_DOXY_SA;
405     }
406   }
407   else if (s[0].unicode() == 't') {
408     if (s[1].unicode() == 't') {
409       return T_DOXY_TT;
410     }
411   }
412   return T_DOXY_IDENTIFIER;
413 }
414 
classify3(const QChar * s)415 static inline int classify3(const QChar *s) {
416   if (s[0].unicode() == 'a') {
417     if (s[1].unicode() == 'r') {
418       if (s[2].unicode() == 'g') {
419         return T_DOXY_ARG;
420       }
421     }
422   }
423   else if (s[0].unicode() == 'b') {
424     if (s[1].unicode() == 'u') {
425       if (s[2].unicode() == 'g') {
426         return T_DOXY_BUG;
427       }
428     }
429   }
430   else if (s[0].unicode() == 'd') {
431     if (s[1].unicode() == 'e') {
432       if (s[2].unicode() == 'f') {
433         return T_DOXY_DEF;
434       }
435     }
436     else if (s[1].unicode() == 'i') {
437       if (s[2].unicode() == 'r') {
438         return T_DOXY_DIR;
439       }
440       else if (s[2].unicode() == 'v') {
441         return T_DOXY_DIV;
442       }
443     }
444     else if (s[1].unicode() == 'o') {
445       if (s[2].unicode() == 't') {
446         return T_DOXY_DOT;
447       }
448     }
449   }
450   else if (s[0].unicode() == 'g') {
451     if (s[1].unicode() == 'u') {
452       if (s[2].unicode() == 'i') {
453         return T_DOXY_GUI;
454       }
455     }
456   }
457   else if (s[0].unicode() == 'm') {
458     if (s[1].unicode() == 's') {
459       if (s[2].unicode() == 'c') {
460         return T_DOXY_MSC;
461       }
462     }
463   }
464   else if (s[0].unicode() == 'p') {
465     if (s[1].unicode() == 'a') {
466       if (s[2].unicode() == 'r') {
467         return T_DOXY_PAR;
468       }
469     }
470     else if (s[1].unicode() == 'r') {
471       if (s[2].unicode() == 'e') {
472         return T_DOXY_PRE;
473       }
474     }
475   }
476   else if (s[0].unicode() == 'r') {
477     if (s[1].unicode() == 'a') {
478       if (s[2].unicode() == 'w') {
479         return T_DOXY_RAW;
480       }
481     }
482     else if (s[1].unicode() == 'e') {
483       if (s[2].unicode() == 'f') {
484         return T_DOXY_REF;
485       }
486     }
487     else if (s[1].unicode() == 'o') {
488       if (s[2].unicode() == 'w') {
489         return T_DOXY_ROW;
490       }
491     }
492   }
493   else if (s[0].unicode() == 's') {
494     if (s[1].unicode() == 'e') {
495       if (s[2].unicode() == 'e') {
496         return T_DOXY_SEE;
497       }
498     }
499     else if (s[1].unicode() == 'q') {
500       if (s[2].unicode() == 'l') {
501         return T_DOXY_SQL;
502       }
503     }
504     else if (s[1].unicode() == 'u') {
505       if (s[2].unicode() == 'b') {
506         return T_DOXY_SUB;
507       }
508       else if (s[2].unicode() == 'p') {
509         return T_DOXY_SUP;
510       }
511     }
512     else if (s[1].unicode() == 'v') {
513       if (s[2].unicode() == 'g') {
514         return T_DOXY_SVG;
515       }
516     }
517   }
518   else if (s[0].unicode() == 'v') {
519     if (s[1].unicode() == 'a') {
520       if (s[2].unicode() == 'r') {
521         return T_DOXY_VAR;
522       }
523     }
524   }
525   else if (s[0].unicode() == 'x') {
526     if (s[1].unicode() == 'm') {
527       if (s[2].unicode() == 'l') {
528         return T_DOXY_XML;
529       }
530     }
531   }
532   return T_DOXY_IDENTIFIER;
533 }
534 
classify4(const QChar * s)535 static inline int classify4(const QChar *s) {
536   if (s[0].unicode() == 'b') {
537     if (s[1].unicode() == 'o') {
538       if (s[2].unicode() == 'l') {
539         if (s[3].unicode() == 'd') {
540           return T_DOXY_BOLD;
541         }
542       }
543     }
544   }
545   else if (s[0].unicode() == 'c') {
546     if (s[1].unicode() == 'i') {
547       if (s[2].unicode() == 't') {
548         if (s[3].unicode() == 'e') {
549           return T_DOXY_CITE;
550         }
551       }
552     }
553     else if (s[1].unicode() == 'o') {
554       if (s[2].unicode() == 'd') {
555         if (s[3].unicode() == 'e') {
556           return T_DOXY_CODE;
557         }
558       }
559       else if (s[2].unicode() == 'n') {
560         if (s[3].unicode() == 'd') {
561           return T_DOXY_COND;
562         }
563       }
564     }
565   }
566   else if (s[0].unicode() == 'd') {
567     if (s[1].unicode() == 'a') {
568       if (s[2].unicode() == 't') {
569         if (s[3].unicode() == 'e') {
570           return T_DOXY_DATE;
571         }
572       }
573     }
574     else if (s[1].unicode() == 'o') {
575       if (s[2].unicode() == 't') {
576         if (s[3].unicode() == 's') {
577           return T_DOXY_DOTS;
578         }
579       }
580     }
581   }
582   else if (s[0].unicode() == 'e') {
583     if (s[1].unicode() == 'l') {
584       if (s[2].unicode() == 's') {
585         if (s[3].unicode() == 'e') {
586           return T_DOXY_ELSE;
587         }
588       }
589     }
590     else if (s[1].unicode() == 'n') {
591       if (s[2].unicode() == 'u') {
592         if (s[3].unicode() == 'm') {
593           return T_DOXY_ENUM;
594         }
595       }
596     }
597   }
598   else if (s[0].unicode() == 'f') {
599     if (s[1].unicode() == 'i') {
600       if (s[2].unicode() == 'l') {
601         if (s[3].unicode() == 'e') {
602           return T_DOXY_FILE;
603         }
604       }
605     }
606   }
607   else if (s[0].unicode() == 'l') {
608     if (s[1].unicode() == 'i') {
609       if (s[2].unicode() == 'n') {
610         if (s[3].unicode() == 'e') {
611           return T_DOXY_LINE;
612         }
613         else if (s[3].unicode() == 'k') {
614           return T_DOXY_LINK;
615         }
616       }
617       else if (s[2].unicode() == 's') {
618         if (s[3].unicode() == 't') {
619           return T_DOXY_LIST;
620         }
621       }
622     }
623   }
624   else if (s[0].unicode() == 'm') {
625     if (s[1].unicode() == 'e') {
626       if (s[2].unicode() == 't') {
627         if (s[3].unicode() == 'a') {
628           return T_DOXY_META;
629         }
630       }
631     }
632   }
633   else if (s[0].unicode() == 'n') {
634     if (s[1].unicode() == 'a') {
635       if (s[2].unicode() == 'm') {
636         if (s[3].unicode() == 'e') {
637           return T_DOXY_NAME;
638         }
639       }
640     }
641     else if (s[1].unicode() == 'o') {
642       if (s[2].unicode() == 't') {
643         if (s[3].unicode() == 'e') {
644           return T_DOXY_NOTE;
645         }
646       }
647     }
648   }
649   else if (s[0].unicode() == 'o') {
650     if (s[1].unicode() == 'm') {
651       if (s[2].unicode() == 'i') {
652         if (s[3].unicode() == 't') {
653           return T_DOXY_OMIT;
654         }
655       }
656     }
657     else if (s[1].unicode() == 'n') {
658       if (s[2].unicode() == 'l') {
659         if (s[3].unicode() == 'y') {
660           return T_DOXY_ONLY;
661         }
662       }
663     }
664   }
665   else if (s[0].unicode() == 'p') {
666     if (s[1].unicode() == 'a') {
667       if (s[2].unicode() == 'g') {
668         if (s[3].unicode() == 'e') {
669           return T_DOXY_PAGE;
670         }
671       }
672       else if (s[2].unicode() == 'r') {
673         if (s[3].unicode() == 't') {
674           return T_DOXY_PART;
675         }
676       }
677     }
678     else if (s[1].unicode() == 'o') {
679       if (s[2].unicode() == 's') {
680         if (s[3].unicode() == 't') {
681           return T_DOXY_POST;
682         }
683       }
684     }
685     else if (s[1].unicode() == 'u') {
686       if (s[2].unicode() == 'r') {
687         if (s[3].unicode() == 'e') {
688           return T_DOXY_PURE;
689         }
690       }
691     }
692   }
693   else if (s[0].unicode() == 's') {
694     if (s[1].unicode() == 'k') {
695       if (s[2].unicode() == 'i') {
696         if (s[3].unicode() == 'p') {
697           return T_DOXY_SKIP;
698         }
699       }
700     }
701     else if (s[1].unicode() == 'p') {
702       if (s[2].unicode() == 'a') {
703         if (s[3].unicode() == 'n') {
704           return T_DOXY_SPAN;
705         }
706       }
707     }
708   }
709   else if (s[0].unicode() == 't') {
710     if (s[1].unicode() == 'e') {
711       if (s[2].unicode() == 's') {
712         if (s[3].unicode() == 't') {
713           return T_DOXY_TEST;
714         }
715       }
716     }
717     else if (s[1].unicode() == 'o') {
718       if (s[2].unicode() == 'd') {
719         if (s[3].unicode() == 'o') {
720           return T_DOXY_TODO;
721         }
722       }
723     }
724   }
725   return T_DOXY_IDENTIFIER;
726 }
727 
classify5(const QChar * s)728 static inline int classify5(const QChar *s) {
729   if (s[0].unicode() == 'b') {
730     if (s[1].unicode() == 'r') {
731       if (s[2].unicode() == 'i') {
732         if (s[3].unicode() == 'e') {
733           if (s[4].unicode() == 'f') {
734             return T_DOXY_BRIEF;
735           }
736         }
737       }
738     }
739   }
740   else if (s[0].unicode() == 'c') {
741     if (s[1].unicode() == 'l') {
742       if (s[2].unicode() == 'a') {
743         if (s[3].unicode() == 's') {
744           if (s[4].unicode() == 's') {
745             return T_DOXY_CLASS;
746           }
747         }
748       }
749     }
750   }
751   else if (s[0].unicode() == 'e') {
752     if (s[1].unicode() == 'n') {
753       if (s[2].unicode() == 'd') {
754         if (s[3].unicode() == 'i') {
755           if (s[4].unicode() == 'f') {
756             return T_DOXY_ENDIF;
757           }
758         }
759       }
760     }
761   }
762   else if (s[0].unicode() == 'g') {
763     if (s[1].unicode() == 'r') {
764       if (s[2].unicode() == 'o') {
765         if (s[3].unicode() == 'u') {
766           if (s[4].unicode() == 'p') {
767             return T_DOXY_GROUP;
768           }
769         }
770       }
771     }
772   }
773   else if (s[0].unicode() == 'i') {
774     if (s[1].unicode() == 'f') {
775       if (s[2].unicode() == 'n') {
776         if (s[3].unicode() == 'o') {
777           if (s[4].unicode() == 't') {
778             return T_DOXY_IFNOT;
779           }
780         }
781       }
782     }
783     else if (s[1].unicode() == 'm') {
784       if (s[2].unicode() == 'a') {
785         if (s[3].unicode() == 'g') {
786           if (s[4].unicode() == 'e') {
787             return T_DOXY_IMAGE;
788           }
789         }
790       }
791     }
792     else if (s[1].unicode() == 'n') {
793       if (s[2].unicode() == 'd') {
794         if (s[3].unicode() == 'e') {
795           if (s[4].unicode() == 'x') {
796             return T_DOXY_INDEX;
797           }
798         }
799       }
800     }
801   }
802   else if (s[0].unicode() == 'm') {
803     if (s[1].unicode() == 'a') {
804       if (s[2].unicode() == 'c') {
805         if (s[3].unicode() == 'r') {
806           if (s[4].unicode() == 'o') {
807             return T_DOXY_MACRO;
808           }
809         }
810       }
811     }
812   }
813   else if (s[0].unicode() == 'p') {
814     if (s[1].unicode() == 'a') {
815       if (s[2].unicode() == 'r') {
816         if (s[3].unicode() == 'a') {
817           if (s[4].unicode() == 'm') {
818             return T_DOXY_PARAM;
819           }
820         }
821       }
822     }
823   }
824   else if (s[0].unicode() == 'r') {
825     if (s[1].unicode() == 'e') {
826       if (s[2].unicode() == 'i') {
827         if (s[3].unicode() == 'm') {
828           if (s[4].unicode() == 'p') {
829             return T_DOXY_REIMP;
830           }
831         }
832       }
833     }
834   }
835   else if (s[0].unicode() == 's') {
836     if (s[1].unicode() == 'h') {
837       if (s[2].unicode() == 'o') {
838         if (s[3].unicode() == 'r') {
839           if (s[4].unicode() == 't') {
840             return T_DOXY_SHORT;
841           }
842         }
843       }
844     }
845     else if (s[1].unicode() == 'i') {
846       if (s[2].unicode() == 'n') {
847         if (s[3].unicode() == 'c') {
848           if (s[4].unicode() == 'e') {
849             return T_DOXY_SINCE;
850           }
851         }
852       }
853     }
854   }
855   else if (s[0].unicode() == 't') {
856     if (s[1].unicode() == 'a') {
857       if (s[2].unicode() == 'b') {
858         if (s[3].unicode() == 'l') {
859           if (s[4].unicode() == 'e') {
860             return T_DOXY_TABLE;
861           }
862         }
863       }
864     }
865     else if (s[1].unicode() == 'h') {
866       if (s[2].unicode() == 'r') {
867         if (s[3].unicode() == 'o') {
868           if (s[4].unicode() == 'w') {
869             return T_DOXY_THROW;
870           }
871         }
872       }
873     }
874     else if (s[1].unicode() == 'i') {
875       if (s[2].unicode() == 't') {
876         if (s[3].unicode() == 'l') {
877           if (s[4].unicode() == 'e') {
878             return T_DOXY_TITLE;
879           }
880         }
881       }
882     }
883   }
884   else if (s[0].unicode() == 'u') {
885     if (s[1].unicode() == 'n') {
886       if (s[2].unicode() == 'i') {
887         if (s[3].unicode() == 'o') {
888           if (s[4].unicode() == 'n') {
889             return T_DOXY_UNION;
890           }
891         }
892       }
893       else if (s[2].unicode() == 't') {
894         if (s[3].unicode() == 'i') {
895           if (s[4].unicode() == 'l') {
896             return T_DOXY_UNTIL;
897           }
898         }
899       }
900     }
901   }
902   else if (s[0].unicode() == 'v') {
903     if (s[1].unicode() == 'a') {
904       if (s[2].unicode() == 'l') {
905         if (s[3].unicode() == 'u') {
906           if (s[4].unicode() == 'e') {
907             return T_DOXY_VALUE;
908           }
909         }
910       }
911     }
912   }
913   return T_DOXY_IDENTIFIER;
914 }
915 
classify6(const QChar * s)916 static inline int classify6(const QChar *s) {
917   if (s[0].unicode() == 'a') {
918     if (s[1].unicode() == 'n') {
919       if (s[2].unicode() == 'c') {
920         if (s[3].unicode() == 'h') {
921           if (s[4].unicode() == 'o') {
922             if (s[5].unicode() == 'r') {
923               return T_DOXY_ANCHOR;
924             }
925           }
926         }
927       }
928     }
929     else if (s[1].unicode() == 'u') {
930       if (s[2].unicode() == 't') {
931         if (s[3].unicode() == 'h') {
932           if (s[4].unicode() == 'o') {
933             if (s[5].unicode() == 'r') {
934               return T_DOXY_AUTHOR;
935             }
936           }
937         }
938       }
939     }
940   }
941   else if (s[0].unicode() == 'c') {
942     if (s[1].unicode() == 'o') {
943       if (s[2].unicode() == 'm') {
944         if (s[3].unicode() == 'p') {
945           if (s[4].unicode() == 'a') {
946             if (s[5].unicode() == 't') {
947               return T_DOXY_COMPAT;
948             }
949           }
950         }
951       }
952     }
953   }
954   else if (s[0].unicode() == 'e') {
955     if (s[1].unicode() == 'l') {
956       if (s[2].unicode() == 's') {
957         if (s[3].unicode() == 'e') {
958           if (s[4].unicode() == 'i') {
959             if (s[5].unicode() == 'f') {
960               return T_DOXY_ELSEIF;
961             }
962           }
963         }
964       }
965     }
966     else if (s[1].unicode() == 'n') {
967       if (s[2].unicode() == 'd') {
968         if (s[3].unicode() == 'd') {
969           if (s[4].unicode() == 'o') {
970             if (s[5].unicode() == 't') {
971               return T_DOXY_ENDDOT;
972             }
973           }
974         }
975         else if (s[3].unicode() == 'm') {
976           if (s[4].unicode() == 's') {
977             if (s[5].unicode() == 'c') {
978               return T_DOXY_ENDMSC;
979             }
980           }
981         }
982         else if (s[3].unicode() == 'r') {
983           if (s[4].unicode() == 'a') {
984             if (s[5].unicode() == 'w') {
985               return T_DOXY_ENDRAW;
986             }
987           }
988         }
989         else if (s[3].unicode() == 'u') {
990           if (s[4].unicode() == 'm') {
991             if (s[5].unicode() == 'l') {
992               return T_DOXY_ENDUML;
993             }
994           }
995         }
996       }
997     }
998     else if (s[1].unicode() == 'x') {
999       if (s[2].unicode() == 'p') {
1000         if (s[3].unicode() == 'i') {
1001           if (s[4].unicode() == 'r') {
1002             if (s[5].unicode() == 'e') {
1003               return T_DOXY_EXPIRE;
1004             }
1005           }
1006         }
1007       }
1008     }
1009   }
1010   else if (s[0].unicode() == 'h') {
1011     if (s[1].unicode() == 'e') {
1012       if (s[2].unicode() == 'a') {
1013         if (s[3].unicode() == 'd') {
1014           if (s[4].unicode() == 'e') {
1015             if (s[5].unicode() == 'r') {
1016               return T_DOXY_HEADER;
1017             }
1018           }
1019         }
1020       }
1021     }
1022   }
1023   else if (s[0].unicode() == 'm') {
1024     if (s[1].unicode() == 'o') {
1025       if (s[2].unicode() == 'd') {
1026         if (s[3].unicode() == 'u') {
1027           if (s[4].unicode() == 'l') {
1028             if (s[5].unicode() == 'e') {
1029               return T_DOXY_MODULE;
1030             }
1031           }
1032         }
1033       }
1034     }
1035   }
1036   else if (s[0].unicode() == 'o') {
1037     if (s[1].unicode() == 'p') {
1038       if (s[2].unicode() == 'e') {
1039         if (s[3].unicode() == 'n') {
1040           if (s[4].unicode() == 'g') {
1041             if (s[5].unicode() == 'l') {
1042               return T_DOXY_OPENGL;
1043             }
1044           }
1045         }
1046       }
1047     }
1048   }
1049   else if (s[0].unicode() == 'p') {
1050     if (s[1].unicode() == 'u') {
1051       if (s[2].unicode() == 'b') {
1052         if (s[3].unicode() == 'l') {
1053           if (s[4].unicode() == 'i') {
1054             if (s[5].unicode() == 'c') {
1055               return T_DOXY_PUBLIC;
1056             }
1057           }
1058         }
1059       }
1060     }
1061   }
1062   else if (s[0].unicode() == 'r') {
1063     if (s[1].unicode() == 'e') {
1064       if (s[2].unicode() == 'm') {
1065         if (s[3].unicode() == 'a') {
1066           if (s[4].unicode() == 'r') {
1067             if (s[5].unicode() == 'k') {
1068               return T_DOXY_REMARK;
1069             }
1070           }
1071         }
1072       }
1073       else if (s[2].unicode() == 's') {
1074         if (s[3].unicode() == 'u') {
1075           if (s[4].unicode() == 'l') {
1076             if (s[5].unicode() == 't') {
1077               return T_DOXY_RESULT;
1078             }
1079           }
1080         }
1081       }
1082       else if (s[2].unicode() == 't') {
1083         if (s[3].unicode() == 'u') {
1084           if (s[4].unicode() == 'r') {
1085             if (s[5].unicode() == 'n') {
1086               return T_DOXY_RETURN;
1087             }
1088           }
1089         }
1090         else if (s[3].unicode() == 'v') {
1091           if (s[4].unicode() == 'a') {
1092             if (s[5].unicode() == 'l') {
1093               return T_DOXY_RETVAL;
1094             }
1095           }
1096         }
1097       }
1098     }
1099   }
1100   else if (s[0].unicode() == 's') {
1101     if (s[1].unicode() == 'k') {
1102       if (s[2].unicode() == 'i') {
1103         if (s[3].unicode() == 'p') {
1104           if (s[4].unicode() == 't') {
1105             if (s[5].unicode() == 'o') {
1106               return T_DOXY_SKIPTO;
1107             }
1108           }
1109         }
1110       }
1111     }
1112     else if (s[1].unicode() == 't') {
1113       if (s[2].unicode() == 'r') {
1114         if (s[3].unicode() == 'u') {
1115           if (s[4].unicode() == 'c') {
1116             if (s[5].unicode() == 't') {
1117               return T_DOXY_STRUCT;
1118             }
1119           }
1120         }
1121       }
1122     }
1123   }
1124   else if (s[0].unicode() == 't') {
1125     if (s[1].unicode() == 'a') {
1126       if (s[2].unicode() == 'r') {
1127         if (s[3].unicode() == 'g') {
1128           if (s[4].unicode() == 'e') {
1129             if (s[5].unicode() == 't') {
1130               return T_DOXY_TARGET;
1131             }
1132           }
1133         }
1134       }
1135     }
1136     else if (s[1].unicode() == 'h') {
1137       if (s[2].unicode() == 'r') {
1138         if (s[3].unicode() == 'o') {
1139           if (s[4].unicode() == 'w') {
1140             if (s[5].unicode() == 's') {
1141               return T_DOXY_THROWS;
1142             }
1143           }
1144         }
1145       }
1146     }
1147     else if (s[1].unicode() == 'p') {
1148       if (s[2].unicode() == 'a') {
1149         if (s[3].unicode() == 'r') {
1150           if (s[4].unicode() == 'a') {
1151             if (s[5].unicode() == 'm') {
1152               return T_DOXY_TPARAM;
1153             }
1154           }
1155         }
1156       }
1157     }
1158   }
1159   else if (s[0].unicode() == 'w') {
1160     if (s[1].unicode() == 'e') {
1161       if (s[2].unicode() == 'b') {
1162         if (s[3].unicode() == 'k') {
1163           if (s[4].unicode() == 'i') {
1164             if (s[5].unicode() == 't') {
1165               return T_DOXY_WEBKIT;
1166             }
1167           }
1168         }
1169       }
1170     }
1171   }
1172   return T_DOXY_IDENTIFIER;
1173 }
1174 
classify7(const QChar * s)1175 static inline int classify7(const QChar *s) {
1176   if (s[0].unicode() == 'a') {
1177     if (s[1].unicode() == 'u') {
1178       if (s[2].unicode() == 't') {
1179         if (s[3].unicode() == 'h') {
1180           if (s[4].unicode() == 'o') {
1181             if (s[5].unicode() == 'r') {
1182               if (s[6].unicode() == 's') {
1183                 return T_DOXY_AUTHORS;
1184               }
1185             }
1186           }
1187         }
1188       }
1189     }
1190   }
1191   else if (s[0].unicode() == 'b') {
1192     if (s[1].unicode() == 'a') {
1193       if (s[2].unicode() == 'd') {
1194         if (s[3].unicode() == 'c') {
1195           if (s[4].unicode() == 'o') {
1196             if (s[5].unicode() == 'd') {
1197               if (s[6].unicode() == 'e') {
1198                 return T_DOXY_BADCODE;
1199               }
1200             }
1201           }
1202         }
1203       }
1204     }
1205   }
1206   else if (s[0].unicode() == 'c') {
1207     if (s[1].unicode() == 'a') {
1208       if (s[2].unicode() == 'p') {
1209         if (s[3].unicode() == 't') {
1210           if (s[4].unicode() == 'i') {
1211             if (s[5].unicode() == 'o') {
1212               if (s[6].unicode() == 'n') {
1213                 return T_DOXY_CAPTION;
1214               }
1215             }
1216           }
1217         }
1218       }
1219     }
1220     else if (s[1].unicode() == 'h') {
1221       if (s[2].unicode() == 'a') {
1222         if (s[3].unicode() == 'p') {
1223           if (s[4].unicode() == 't') {
1224             if (s[5].unicode() == 'e') {
1225               if (s[6].unicode() == 'r') {
1226                 return T_DOXY_CHAPTER;
1227               }
1228             }
1229           }
1230         }
1231       }
1232     }
1233     else if (s[1].unicode() == 'o') {
1234       if (s[2].unicode() == 'p') {
1235         if (s[3].unicode() == 'y') {
1236           if (s[4].unicode() == 'd') {
1237             if (s[5].unicode() == 'o') {
1238               if (s[6].unicode() == 'c') {
1239                 return T_DOXY_COPYDOC;
1240               }
1241             }
1242           }
1243         }
1244       }
1245       else if (s[2].unicode() == 'r') {
1246         if (s[3].unicode() == 'e') {
1247           if (s[4].unicode() == 'l') {
1248             if (s[5].unicode() == 'i') {
1249               if (s[6].unicode() == 'b') {
1250                 return T_DOXY_CORELIB;
1251               }
1252             }
1253           }
1254         }
1255       }
1256     }
1257   }
1258   else if (s[0].unicode() == 'd') {
1259     if (s[1].unicode() == 'e') {
1260       if (s[2].unicode() == 'f') {
1261         if (s[3].unicode() == 'a') {
1262           if (s[4].unicode() == 'u') {
1263             if (s[5].unicode() == 'l') {
1264               if (s[6].unicode() == 't') {
1265                 return T_DOXY_DEFAULT;
1266               }
1267             }
1268           }
1269         }
1270       }
1271       else if (s[2].unicode() == 't') {
1272         if (s[3].unicode() == 'a') {
1273           if (s[4].unicode() == 'i') {
1274             if (s[5].unicode() == 'l') {
1275               if (s[6].unicode() == 's') {
1276                 return T_DOXY_DETAILS;
1277               }
1278             }
1279           }
1280         }
1281       }
1282     }
1283     else if (s[1].unicode() == 'i') {
1284       if (s[2].unicode() == 'a') {
1285         if (s[3].unicode() == 'f') {
1286           if (s[4].unicode() == 'i') {
1287             if (s[5].unicode() == 'l') {
1288               if (s[6].unicode() == 'e') {
1289                 return T_DOXY_DIAFILE;
1290               }
1291             }
1292           }
1293         }
1294       }
1295     }
1296     else if (s[1].unicode() == 'o') {
1297       if (s[2].unicode() == 't') {
1298         if (s[3].unicode() == 'f') {
1299           if (s[4].unicode() == 'i') {
1300             if (s[5].unicode() == 'l') {
1301               if (s[6].unicode() == 'e') {
1302                 return T_DOXY_DOTFILE;
1303               }
1304             }
1305           }
1306         }
1307       }
1308     }
1309   }
1310   else if (s[0].unicode() == 'e') {
1311     if (s[1].unicode() == 'n') {
1312       if (s[2].unicode() == 'd') {
1313         if (s[3].unicode() == 'c') {
1314           if (s[4].unicode() == 'o') {
1315             if (s[5].unicode() == 'd') {
1316               if (s[6].unicode() == 'e') {
1317                 return T_DOXY_ENDCODE;
1318               }
1319             }
1320             else if (s[5].unicode() == 'n') {
1321               if (s[6].unicode() == 'd') {
1322                 return T_DOXY_ENDCOND;
1323               }
1324             }
1325           }
1326         }
1327         else if (s[3].unicode() == 'l') {
1328           if (s[4].unicode() == 'i') {
1329             if (s[5].unicode() == 'n') {
1330               if (s[6].unicode() == 'k') {
1331                 return T_DOXY_ENDLINK;
1332               }
1333             }
1334             else if (s[5].unicode() == 's') {
1335               if (s[6].unicode() == 't') {
1336                 return T_DOXY_ENDLIST;
1337               }
1338             }
1339           }
1340         }
1341         else if (s[3].unicode() == 'o') {
1342           if (s[4].unicode() == 'm') {
1343             if (s[5].unicode() == 'i') {
1344               if (s[6].unicode() == 't') {
1345                 return T_DOXY_ENDOMIT;
1346               }
1347             }
1348           }
1349         }
1350         else if (s[3].unicode() == 'p') {
1351           if (s[4].unicode() == 'a') {
1352             if (s[5].unicode() == 'r') {
1353               if (s[6].unicode() == 't') {
1354                 return T_DOXY_ENDPART;
1355               }
1356             }
1357           }
1358         }
1359       }
1360     }
1361     else if (s[1].unicode() == 'x') {
1362       if (s[2].unicode() == 'a') {
1363         if (s[3].unicode() == 'm') {
1364           if (s[4].unicode() == 'p') {
1365             if (s[5].unicode() == 'l') {
1366               if (s[6].unicode() == 'e') {
1367                 return T_DOXY_EXAMPLE;
1368               }
1369             }
1370           }
1371         }
1372       }
1373       else if (s[2].unicode() == 't') {
1374         if (s[3].unicode() == 'e') {
1375           if (s[4].unicode() == 'n') {
1376             if (s[5].unicode() == 'd') {
1377               if (s[6].unicode() == 's') {
1378                 return T_DOXY_EXTENDS;
1379               }
1380             }
1381           }
1382         }
1383       }
1384     }
1385   }
1386   else if (s[0].unicode() == 'i') {
1387     if (s[1].unicode() == 'n') {
1388       if (s[2].unicode() == 'c') {
1389         if (s[3].unicode() == 'l') {
1390           if (s[4].unicode() == 'u') {
1391             if (s[5].unicode() == 'd') {
1392               if (s[6].unicode() == 'e') {
1393                 return T_DOXY_INCLUDE;
1394               }
1395             }
1396           }
1397         }
1398       }
1399       else if (s[2].unicode() == 'g') {
1400         if (s[3].unicode() == 'r') {
1401           if (s[4].unicode() == 'o') {
1402             if (s[5].unicode() == 'u') {
1403               if (s[6].unicode() == 'p') {
1404                 return T_DOXY_INGROUP;
1405               }
1406             }
1407           }
1408         }
1409       }
1410     }
1411   }
1412   else if (s[0].unicode() == 'k') {
1413     if (s[1].unicode() == 'e') {
1414       if (s[2].unicode() == 'y') {
1415         if (s[3].unicode() == 'w') {
1416           if (s[4].unicode() == 'o') {
1417             if (s[5].unicode() == 'r') {
1418               if (s[6].unicode() == 'd') {
1419                 return T_DOXY_KEYWORD;
1420               }
1421             }
1422           }
1423         }
1424       }
1425     }
1426   }
1427   else if (s[0].unicode() == 'm') {
1428     if (s[1].unicode() == 'a') {
1429       if (s[2].unicode() == 'n') {
1430         if (s[3].unicode() == 'o') {
1431           if (s[4].unicode() == 'n') {
1432             if (s[5].unicode() == 'l') {
1433               if (s[6].unicode() == 'y') {
1434                 return T_DOXY_MANONLY;
1435               }
1436             }
1437           }
1438         }
1439       }
1440     }
1441     else if (s[1].unicode() == 's') {
1442       if (s[2].unicode() == 'c') {
1443         if (s[3].unicode() == 'f') {
1444           if (s[4].unicode() == 'i') {
1445             if (s[5].unicode() == 'l') {
1446               if (s[6].unicode() == 'e') {
1447                 return T_DOXY_MSCFILE;
1448               }
1449             }
1450           }
1451         }
1452       }
1453     }
1454   }
1455   else if (s[0].unicode() == 'n') {
1456     if (s[1].unicode() == 'e') {
1457       if (s[2].unicode() == 't') {
1458         if (s[3].unicode() == 'w') {
1459           if (s[4].unicode() == 'o') {
1460             if (s[5].unicode() == 'r') {
1461               if (s[6].unicode() == 'k') {
1462                 return T_DOXY_NETWORK;
1463               }
1464             }
1465           }
1466         }
1467       }
1468       else if (s[2].unicode() == 'w') {
1469         if (s[3].unicode() == 'c') {
1470           if (s[4].unicode() == 'o') {
1471             if (s[5].unicode() == 'd') {
1472               if (s[6].unicode() == 'e') {
1473                 return T_DOXY_NEWCODE;
1474               }
1475             }
1476           }
1477         }
1478       }
1479     }
1480   }
1481   else if (s[0].unicode() == 'o') {
1482     if (s[1].unicode() == 'l') {
1483       if (s[2].unicode() == 'd') {
1484         if (s[3].unicode() == 'c') {
1485           if (s[4].unicode() == 'o') {
1486             if (s[5].unicode() == 'd') {
1487               if (s[6].unicode() == 'e') {
1488                 return T_DOXY_OLDCODE;
1489               }
1490             }
1491           }
1492         }
1493       }
1494     }
1495   }
1496   else if (s[0].unicode() == 'p') {
1497     if (s[1].unicode() == 'a') {
1498       if (s[2].unicode() == 'c') {
1499         if (s[3].unicode() == 'k') {
1500           if (s[4].unicode() == 'a') {
1501             if (s[5].unicode() == 'g') {
1502               if (s[6].unicode() == 'e') {
1503                 return T_DOXY_PACKAGE;
1504               }
1505             }
1506           }
1507         }
1508       }
1509     }
1510     else if (s[1].unicode() == 'r') {
1511       if (s[2].unicode() == 'i') {
1512         if (s[3].unicode() == 'n') {
1513           if (s[4].unicode() == 't') {
1514             if (s[5].unicode() == 't') {
1515               if (s[6].unicode() == 'o') {
1516                 return T_DOXY_PRINTTO;
1517               }
1518             }
1519           }
1520         }
1521         else if (s[3].unicode() == 'v') {
1522           if (s[4].unicode() == 'a') {
1523             if (s[5].unicode() == 't') {
1524               if (s[6].unicode() == 'e') {
1525                 return T_DOXY_PRIVATE;
1526               }
1527             }
1528           }
1529         }
1530       }
1531     }
1532   }
1533   else if (s[0].unicode() == 'q') {
1534     if (s[1].unicode() == 'm') {
1535       if (s[2].unicode() == 'l') {
1536         if (s[3].unicode() == 't') {
1537           if (s[4].unicode() == 'y') {
1538             if (s[5].unicode() == 'p') {
1539               if (s[6].unicode() == 'e') {
1540                 return T_DOXY_QMLTYPE;
1541               }
1542             }
1543           }
1544         }
1545       }
1546     }
1547   }
1548   else if (s[0].unicode() == 'r') {
1549     if (s[1].unicode() == 'e') {
1550       if (s[2].unicode() == 'f') {
1551         if (s[3].unicode() == 'i') {
1552           if (s[4].unicode() == 't') {
1553             if (s[5].unicode() == 'e') {
1554               if (s[6].unicode() == 'm') {
1555                 return T_DOXY_REFITEM;
1556               }
1557             }
1558           }
1559         }
1560       }
1561       else if (s[2].unicode() == 'l') {
1562         if (s[3].unicode() == 'a') {
1563           if (s[4].unicode() == 't') {
1564             if (s[5].unicode() == 'e') {
1565               if (s[6].unicode() == 'd') {
1566                 return T_DOXY_RELATED;
1567               }
1568               else if (s[6].unicode() == 's') {
1569                 return T_DOXY_RELATES;
1570               }
1571             }
1572           }
1573         }
1574       }
1575       else if (s[2].unicode() == 'm') {
1576         if (s[3].unicode() == 'a') {
1577           if (s[4].unicode() == 'r') {
1578             if (s[5].unicode() == 'k') {
1579               if (s[6].unicode() == 's') {
1580                 return T_DOXY_REMARKS;
1581               }
1582             }
1583           }
1584         }
1585       }
1586       else if (s[2].unicode() == 't') {
1587         if (s[3].unicode() == 'u') {
1588           if (s[4].unicode() == 'r') {
1589             if (s[5].unicode() == 'n') {
1590               if (s[6].unicode() == 's') {
1591                 return T_DOXY_RETURNS;
1592               }
1593             }
1594           }
1595         }
1596       }
1597     }
1598     else if (s[1].unicode() == 't') {
1599       if (s[2].unicode() == 'f') {
1600         if (s[3].unicode() == 'o') {
1601           if (s[4].unicode() == 'n') {
1602             if (s[5].unicode() == 'l') {
1603               if (s[6].unicode() == 'y') {
1604                 return T_DOXY_RTFONLY;
1605               }
1606             }
1607           }
1608         }
1609       }
1610     }
1611   }
1612   else if (s[0].unicode() == 's') {
1613     if (s[1].unicode() == 'e') {
1614       if (s[2].unicode() == 'c') {
1615         if (s[3].unicode() == 't') {
1616           if (s[4].unicode() == 'i') {
1617             if (s[5].unicode() == 'o') {
1618               if (s[6].unicode() == 'n') {
1619                 return T_DOXY_SECTION;
1620               }
1621             }
1622           }
1623         }
1624       }
1625       else if (s[2].unicode() == 'r') {
1626         if (s[3].unicode() == 'v') {
1627           if (s[4].unicode() == 'i') {
1628             if (s[5].unicode() == 'c') {
1629               if (s[6].unicode() == 'e') {
1630                 return T_DOXY_SERVICE;
1631               }
1632             }
1633           }
1634         }
1635       }
1636     }
1637     else if (s[1].unicode() == 'i') {
1638       if (s[2].unicode() == 'd') {
1639         if (s[3].unicode() == 'e') {
1640           if (s[4].unicode() == 'b') {
1641             if (s[5].unicode() == 'a') {
1642               if (s[6].unicode() == 'r') {
1643                 return T_DOXY_SIDEBAR;
1644               }
1645             }
1646           }
1647         }
1648       }
1649     }
1650     else if (s[1].unicode() == 'n') {
1651       if (s[2].unicode() == 'i') {
1652         if (s[3].unicode() == 'p') {
1653           if (s[4].unicode() == 'p') {
1654             if (s[5].unicode() == 'e') {
1655               if (s[6].unicode() == 't') {
1656                 return T_DOXY_SNIPPET;
1657               }
1658             }
1659           }
1660         }
1661       }
1662     }
1663     else if (s[1].unicode() == 'u') {
1664       if (s[2].unicode() == 'b') {
1665         if (s[3].unicode() == 'p') {
1666           if (s[4].unicode() == 'a') {
1667             if (s[5].unicode() == 'g') {
1668               if (s[6].unicode() == 'e') {
1669                 return T_DOXY_SUBPAGE;
1670               }
1671             }
1672           }
1673         }
1674       }
1675     }
1676   }
1677   else if (s[0].unicode() == 't') {
1678     if (s[1].unicode() == 'y') {
1679       if (s[2].unicode() == 'p') {
1680         if (s[3].unicode() == 'e') {
1681           if (s[4].unicode() == 'd') {
1682             if (s[5].unicode() == 'e') {
1683               if (s[6].unicode() == 'f') {
1684                 return T_DOXY_TYPEDEF;
1685               }
1686             }
1687           }
1688         }
1689       }
1690     }
1691   }
1692   else if (s[0].unicode() == 'u') {
1693     if (s[1].unicode() == 'i') {
1694       if (s[2].unicode() == 't') {
1695         if (s[3].unicode() == 'o') {
1696           if (s[4].unicode() == 'o') {
1697             if (s[5].unicode() == 'l') {
1698               if (s[6].unicode() == 's') {
1699                 return T_DOXY_UITOOLS;
1700               }
1701             }
1702           }
1703         }
1704       }
1705     }
1706     else if (s[1].unicode() == 'n') {
1707       if (s[2].unicode() == 'i') {
1708         if (s[3].unicode() == 'c') {
1709           if (s[4].unicode() == 'o') {
1710             if (s[5].unicode() == 'd') {
1711               if (s[6].unicode() == 'e') {
1712                 return T_DOXY_UNICODE;
1713               }
1714             }
1715           }
1716         }
1717       }
1718     }
1719   }
1720   else if (s[0].unicode() == 'v') {
1721     if (s[1].unicode() == 'e') {
1722       if (s[2].unicode() == 'r') {
1723         if (s[3].unicode() == 's') {
1724           if (s[4].unicode() == 'i') {
1725             if (s[5].unicode() == 'o') {
1726               if (s[6].unicode() == 'n') {
1727                 return T_DOXY_VERSION;
1728               }
1729             }
1730           }
1731         }
1732       }
1733     }
1734   }
1735   else if (s[0].unicode() == 'w') {
1736     if (s[1].unicode() == 'a') {
1737       if (s[2].unicode() == 'r') {
1738         if (s[3].unicode() == 'n') {
1739           if (s[4].unicode() == 'i') {
1740             if (s[5].unicode() == 'n') {
1741               if (s[6].unicode() == 'g') {
1742                 return T_DOXY_WARNING;
1743               }
1744             }
1745           }
1746         }
1747       }
1748     }
1749   }
1750   else if (s[0].unicode() == 'x') {
1751     if (s[1].unicode() == 'm') {
1752       if (s[2].unicode() == 'l') {
1753         if (s[3].unicode() == 'o') {
1754           if (s[4].unicode() == 'n') {
1755             if (s[5].unicode() == 'l') {
1756               if (s[6].unicode() == 'y') {
1757                 return T_DOXY_XMLONLY;
1758               }
1759             }
1760           }
1761         }
1762       }
1763     }
1764   }
1765   return T_DOXY_IDENTIFIER;
1766 }
1767 
classify8(const QChar * s)1768 static inline int classify8(const QChar *s) {
1769   if (s[0].unicode() == 'a') {
1770     if (s[1].unicode() == 'b') {
1771       if (s[2].unicode() == 's') {
1772         if (s[3].unicode() == 't') {
1773           if (s[4].unicode() == 'r') {
1774             if (s[5].unicode() == 'a') {
1775               if (s[6].unicode() == 'c') {
1776                 if (s[7].unicode() == 't') {
1777                   return T_DOXY_ABSTRACT;
1778                 }
1779               }
1780             }
1781           }
1782         }
1783       }
1784     }
1785     else if (s[1].unicode() == 'd') {
1786       if (s[2].unicode() == 'd') {
1787         if (s[3].unicode() == 'i') {
1788           if (s[4].unicode() == 'n') {
1789             if (s[5].unicode() == 'd') {
1790               if (s[6].unicode() == 'e') {
1791                 if (s[7].unicode() == 'x') {
1792                   return T_DOXY_ADDINDEX;
1793                 }
1794               }
1795             }
1796           }
1797         }
1798       }
1799     }
1800   }
1801   else if (s[0].unicode() == 'b') {
1802     if (s[1].unicode() == 'a') {
1803       if (s[2].unicode() == 's') {
1804         if (s[3].unicode() == 'e') {
1805           if (s[4].unicode() == 'n') {
1806             if (s[5].unicode() == 'a') {
1807               if (s[6].unicode() == 'm') {
1808                 if (s[7].unicode() == 'e') {
1809                   return T_DOXY_BASENAME;
1810                 }
1811               }
1812             }
1813           }
1814         }
1815       }
1816     }
1817   }
1818   else if (s[0].unicode() == 'c') {
1819     if (s[1].unicode() == 'a') {
1820       if (s[2].unicode() == 't') {
1821         if (s[3].unicode() == 'e') {
1822           if (s[4].unicode() == 'g') {
1823             if (s[5].unicode() == 'o') {
1824               if (s[6].unicode() == 'r') {
1825                 if (s[7].unicode() == 'y') {
1826                   return T_DOXY_CATEGORY;
1827                 }
1828               }
1829             }
1830           }
1831         }
1832       }
1833     }
1834     else if (s[1].unicode() == 'o') {
1835       if (s[2].unicode() == 'd') {
1836         if (s[3].unicode() == 'e') {
1837           if (s[4].unicode() == 'l') {
1838             if (s[5].unicode() == 'i') {
1839               if (s[6].unicode() == 'n') {
1840                 if (s[7].unicode() == 'e') {
1841                   return T_DOXY_CODELINE;
1842                 }
1843               }
1844             }
1845           }
1846         }
1847       }
1848     }
1849   }
1850   else if (s[0].unicode() == 'd') {
1851     if (s[1].unicode() == 'e') {
1852       if (s[2].unicode() == 'f') {
1853         if (s[3].unicode() == 'g') {
1854           if (s[4].unicode() == 'r') {
1855             if (s[5].unicode() == 'o') {
1856               if (s[6].unicode() == 'u') {
1857                 if (s[7].unicode() == 'p') {
1858                   return T_DOXY_DEFGROUP;
1859                 }
1860               }
1861             }
1862           }
1863         }
1864       }
1865     }
1866   }
1867   else if (s[0].unicode() == 'e') {
1868     if (s[1].unicode() == 'n') {
1869       if (s[2].unicode() == 'd') {
1870         if (s[3].unicode() == 't') {
1871           if (s[4].unicode() == 'a') {
1872             if (s[5].unicode() == 'b') {
1873               if (s[6].unicode() == 'l') {
1874                 if (s[7].unicode() == 'e') {
1875                   return T_DOXY_ENDTABLE;
1876                 }
1877               }
1878             }
1879           }
1880         }
1881       }
1882     }
1883   }
1884   else if (s[0].unicode() == 'f') {
1885     if (s[1].unicode() == 'o') {
1886       if (s[2].unicode() == 'o') {
1887         if (s[3].unicode() == 't') {
1888           if (s[4].unicode() == 'n') {
1889             if (s[5].unicode() == 'o') {
1890               if (s[6].unicode() == 't') {
1891                 if (s[7].unicode() == 'e') {
1892                   return T_DOXY_FOOTNOTE;
1893                 }
1894               }
1895             }
1896           }
1897         }
1898       }
1899     }
1900   }
1901   else if (s[0].unicode() == 'h') {
1902     if (s[1].unicode() == 't') {
1903       if (s[2].unicode() == 'm') {
1904         if (s[3].unicode() == 'l') {
1905           if (s[4].unicode() == 'o') {
1906             if (s[5].unicode() == 'n') {
1907               if (s[6].unicode() == 'l') {
1908                 if (s[7].unicode() == 'y') {
1909                   return T_DOXY_HTMLONLY;
1910                 }
1911               }
1912             }
1913           }
1914         }
1915       }
1916     }
1917   }
1918   else if (s[0].unicode() == 'i') {
1919     if (s[1].unicode() == 'n') {
1920       if (s[2].unicode() == 'h') {
1921         if (s[3].unicode() == 'e') {
1922           if (s[4].unicode() == 'r') {
1923             if (s[5].unicode() == 'i') {
1924               if (s[6].unicode() == 't') {
1925                 if (s[7].unicode() == 's') {
1926                   return T_DOXY_INHERITS;
1927                 }
1928               }
1929             }
1930           }
1931         }
1932       }
1933       else if (s[2].unicode() == 'm') {
1934         if (s[3].unicode() == 'o') {
1935           if (s[4].unicode() == 'd') {
1936             if (s[5].unicode() == 'u') {
1937               if (s[6].unicode() == 'l') {
1938                 if (s[7].unicode() == 'e') {
1939                   return T_DOXY_INMODULE;
1940                 }
1941               }
1942             }
1943           }
1944         }
1945       }
1946       else if (s[2].unicode() == 't') {
1947         if (s[3].unicode() == 'e') {
1948           if (s[4].unicode() == 'r') {
1949             if (s[5].unicode() == 'n') {
1950               if (s[6].unicode() == 'a') {
1951                 if (s[7].unicode() == 'l') {
1952                   return T_DOXY_INTERNAL;
1953                 }
1954               }
1955             }
1956           }
1957         }
1958       }
1959     }
1960   }
1961   else if (s[0].unicode() == 'l') {
1962     if (s[1].unicode() == 'e') {
1963       if (s[2].unicode() == 'g') {
1964         if (s[3].unicode() == 'a') {
1965           if (s[4].unicode() == 'l') {
1966             if (s[5].unicode() == 'e') {
1967               if (s[6].unicode() == 's') {
1968                 if (s[7].unicode() == 'e') {
1969                   return T_DOXY_LEGALESE;
1970                 }
1971               }
1972             }
1973           }
1974         }
1975       }
1976     }
1977   }
1978   else if (s[0].unicode() == 'm') {
1979     if (s[1].unicode() == 'a') {
1980       if (s[2].unicode() == 'i') {
1981         if (s[3].unicode() == 'n') {
1982           if (s[4].unicode() == 'p') {
1983             if (s[5].unicode() == 'a') {
1984               if (s[6].unicode() == 'g') {
1985                 if (s[7].unicode() == 'e') {
1986                   return T_DOXY_MAINPAGE;
1987                 }
1988               }
1989             }
1990           }
1991         }
1992       }
1993     }
1994     else if (s[1].unicode() == 'e') {
1995       if (s[2].unicode() == 'm') {
1996         if (s[3].unicode() == 'b') {
1997           if (s[4].unicode() == 'e') {
1998             if (s[5].unicode() == 'r') {
1999               if (s[6].unicode() == 'o') {
2000                 if (s[7].unicode() == 'f') {
2001                   return T_DOXY_MEMBEROF;
2002                 }
2003               }
2004             }
2005           }
2006         }
2007       }
2008     }
2009   }
2010   else if (s[0].unicode() == 'n') {
2011     if (s[1].unicode() == 'e') {
2012       if (s[2].unicode() == 'x') {
2013         if (s[3].unicode() == 't') {
2014           if (s[4].unicode() == 'p') {
2015             if (s[5].unicode() == 'a') {
2016               if (s[6].unicode() == 'g') {
2017                 if (s[7].unicode() == 'e') {
2018                   return T_DOXY_NEXTPAGE;
2019                 }
2020               }
2021             }
2022           }
2023         }
2024       }
2025     }
2026   }
2027   else if (s[0].unicode() == 'o') {
2028     if (s[1].unicode() == 'b') {
2029       if (s[2].unicode() == 's') {
2030         if (s[3].unicode() == 'o') {
2031           if (s[4].unicode() == 'l') {
2032             if (s[5].unicode() == 'e') {
2033               if (s[6].unicode() == 't') {
2034                 if (s[7].unicode() == 'e') {
2035                   return T_DOXY_OBSOLETE;
2036                 }
2037               }
2038             }
2039           }
2040         }
2041       }
2042     }
2043     else if (s[1].unicode() == 'v') {
2044       if (s[2].unicode() == 'e') {
2045         if (s[3].unicode() == 'r') {
2046           if (s[4].unicode() == 'l') {
2047             if (s[5].unicode() == 'o') {
2048               if (s[6].unicode() == 'a') {
2049                 if (s[7].unicode() == 'd') {
2050                   return T_DOXY_OVERLOAD;
2051                 }
2052               }
2053             }
2054           }
2055         }
2056       }
2057     }
2058   }
2059   else if (s[0].unicode() == 'p') {
2060     if (s[1].unicode() == 'a') {
2061       if (s[2].unicode() == 'r') {
2062         if (s[3].unicode() == 'b') {
2063           if (s[4].unicode() == 'l') {
2064             if (s[5].unicode() == 'o') {
2065               if (s[6].unicode() == 'c') {
2066                 if (s[7].unicode() == 'k') {
2067                   return T_DOXY_PARBLOCK;
2068                 }
2069               }
2070             }
2071           }
2072         }
2073       }
2074     }
2075     else if (s[1].unicode() == 'r') {
2076       if (s[2].unicode() == 'o') {
2077         if (s[3].unicode() == 'p') {
2078           if (s[4].unicode() == 'e') {
2079             if (s[5].unicode() == 'r') {
2080               if (s[6].unicode() == 't') {
2081                 if (s[7].unicode() == 'y') {
2082                   return T_DOXY_PROPERTY;
2083                 }
2084               }
2085             }
2086           }
2087         }
2088         else if (s[3].unicode() == 't') {
2089           if (s[4].unicode() == 'o') {
2090             if (s[5].unicode() == 'c') {
2091               if (s[6].unicode() == 'o') {
2092                 if (s[7].unicode() == 'l') {
2093                   return T_DOXY_PROTOCOL;
2094                 }
2095               }
2096             }
2097           }
2098         }
2099       }
2100     }
2101   }
2102   else if (s[0].unicode() == 'q') {
2103     if (s[1].unicode() == 'm') {
2104       if (s[2].unicode() == 'l') {
2105         if (s[3].unicode() == 'c') {
2106           if (s[4].unicode() == 'l') {
2107             if (s[5].unicode() == 'a') {
2108               if (s[6].unicode() == 's') {
2109                 if (s[7].unicode() == 's') {
2110                   return T_DOXY_QMLCLASS;
2111                 }
2112               }
2113             }
2114           }
2115         }
2116       }
2117     }
2118     else if (s[1].unicode() == 't') {
2119       if (s[2].unicode() == 'e') {
2120         if (s[3].unicode() == 's') {
2121           if (s[4].unicode() == 't') {
2122             if (s[5].unicode() == 'l') {
2123               if (s[6].unicode() == 'i') {
2124                 if (s[7].unicode() == 'b') {
2125                   return T_DOXY_QTESTLIB;
2126                 }
2127               }
2128             }
2129           }
2130         }
2131       }
2132     }
2133   }
2134   else if (s[0].unicode() == 's') {
2135     if (s[1].unicode() == 'e') {
2136       if (s[2].unicode() == 'c') {
2137         if (s[3].unicode() == 't') {
2138           if (s[4].unicode() == 'i') {
2139             if (s[5].unicode() == 'o') {
2140               if (s[6].unicode() == 'n') {
2141                 if (s[7].unicode() == '1') {
2142                   return T_DOXY_SECTION1;
2143                 }
2144                 else if (s[7].unicode() == '2') {
2145                   return T_DOXY_SECTION2;
2146                 }
2147                 else if (s[7].unicode() == '3') {
2148                   return T_DOXY_SECTION3;
2149                 }
2150                 else if (s[7].unicode() == '4') {
2151                   return T_DOXY_SECTION4;
2152                 }
2153               }
2154             }
2155           }
2156         }
2157       }
2158     }
2159     else if (s[1].unicode() == 'k') {
2160       if (s[2].unicode() == 'i') {
2161         if (s[3].unicode() == 'p') {
2162           if (s[4].unicode() == 'l') {
2163             if (s[5].unicode() == 'i') {
2164               if (s[6].unicode() == 'n') {
2165                 if (s[7].unicode() == 'e') {
2166                   return T_DOXY_SKIPLINE;
2167                 }
2168               }
2169             }
2170           }
2171         }
2172       }
2173     }
2174     else if (s[1].unicode() == 't') {
2175       if (s[2].unicode() == 'a') {
2176         if (s[3].unicode() == 'r') {
2177           if (s[4].unicode() == 't') {
2178             if (s[5].unicode() == 'u') {
2179               if (s[6].unicode() == 'm') {
2180                 if (s[7].unicode() == 'l') {
2181                   return T_DOXY_STARTUML;
2182                 }
2183               }
2184             }
2185           }
2186         }
2187       }
2188     }
2189     else if (s[1].unicode() == 'u') {
2190       if (s[2].unicode() == 'b') {
2191         if (s[3].unicode() == 't') {
2192           if (s[4].unicode() == 'i') {
2193             if (s[5].unicode() == 't') {
2194               if (s[6].unicode() == 'l') {
2195                 if (s[7].unicode() == 'e') {
2196                   return T_DOXY_SUBTITLE;
2197                 }
2198               }
2199             }
2200           }
2201         }
2202       }
2203     }
2204   }
2205   else if (s[0].unicode() == 'v') {
2206     if (s[1].unicode() == 'a') {
2207       if (s[2].unicode() == 'r') {
2208         if (s[3].unicode() == 'i') {
2209           if (s[4].unicode() == 'a') {
2210             if (s[5].unicode() == 'b') {
2211               if (s[6].unicode() == 'l') {
2212                 if (s[7].unicode() == 'e') {
2213                   return T_DOXY_VARIABLE;
2214                 }
2215               }
2216             }
2217           }
2218         }
2219       }
2220     }
2221     else if (s[1].unicode() == 'e') {
2222       if (s[2].unicode() == 'r') {
2223         if (s[3].unicode() == 'b') {
2224           if (s[4].unicode() == 'a') {
2225             if (s[5].unicode() == 't') {
2226               if (s[6].unicode() == 'i') {
2227                 if (s[7].unicode() == 'm') {
2228                   return T_DOXY_VERBATIM;
2229                 }
2230               }
2231             }
2232           }
2233         }
2234       }
2235     }
2236     else if (s[1].unicode() == 'h') {
2237       if (s[2].unicode() == 'd') {
2238         if (s[3].unicode() == 'l') {
2239           if (s[4].unicode() == 'f') {
2240             if (s[5].unicode() == 'l') {
2241               if (s[6].unicode() == 'o') {
2242                 if (s[7].unicode() == 'w') {
2243                   return T_DOXY_VHDLFLOW;
2244                 }
2245               }
2246             }
2247           }
2248         }
2249       }
2250     }
2251   }
2252   else if (s[0].unicode() == 'x') {
2253     if (s[1].unicode() == 'r') {
2254       if (s[2].unicode() == 'e') {
2255         if (s[3].unicode() == 'f') {
2256           if (s[4].unicode() == 'i') {
2257             if (s[5].unicode() == 't') {
2258               if (s[6].unicode() == 'e') {
2259                 if (s[7].unicode() == 'm') {
2260                   return T_DOXY_XREFITEM;
2261                 }
2262               }
2263             }
2264           }
2265         }
2266       }
2267     }
2268   }
2269   return T_DOXY_IDENTIFIER;
2270 }
2271 
classify9(const QChar * s)2272 static inline int classify9(const QChar *s) {
2273   if (s[0].unicode() == 'a') {
2274     if (s[1].unicode() == 't') {
2275       if (s[2].unicode() == 't') {
2276         if (s[3].unicode() == 'e') {
2277           if (s[4].unicode() == 'n') {
2278             if (s[5].unicode() == 't') {
2279               if (s[6].unicode() == 'i') {
2280                 if (s[7].unicode() == 'o') {
2281                   if (s[8].unicode() == 'n') {
2282                     return T_DOXY_ATTENTION;
2283                   }
2284                 }
2285               }
2286             }
2287           }
2288         }
2289       }
2290     }
2291   }
2292   else if (s[0].unicode() == 'c') {
2293     if (s[1].unicode() == 'a') {
2294       if (s[2].unicode() == 'l') {
2295         if (s[3].unicode() == 'l') {
2296           if (s[4].unicode() == 'g') {
2297             if (s[5].unicode() == 'r') {
2298               if (s[6].unicode() == 'a') {
2299                 if (s[7].unicode() == 'p') {
2300                   if (s[8].unicode() == 'h') {
2301                     return T_DOXY_CALLGRAPH;
2302                   }
2303                 }
2304               }
2305             }
2306           }
2307         }
2308       }
2309     }
2310     else if (s[1].unicode() == 'o') {
2311       if (s[2].unicode() == 'p') {
2312         if (s[3].unicode() == 'y') {
2313           if (s[4].unicode() == 'b') {
2314             if (s[5].unicode() == 'r') {
2315               if (s[6].unicode() == 'i') {
2316                 if (s[7].unicode() == 'e') {
2317                   if (s[8].unicode() == 'f') {
2318                     return T_DOXY_COPYBRIEF;
2319                   }
2320                 }
2321               }
2322             }
2323           }
2324           else if (s[4].unicode() == 'r') {
2325             if (s[5].unicode() == 'i') {
2326               if (s[6].unicode() == 'g') {
2327                 if (s[7].unicode() == 'h') {
2328                   if (s[8].unicode() == 't') {
2329                     return T_DOXY_COPYRIGHT;
2330                   }
2331                 }
2332               }
2333             }
2334           }
2335         }
2336       }
2337     }
2338   }
2339   else if (s[0].unicode() == 'e') {
2340     if (s[1].unicode() == 'x') {
2341       if (s[2].unicode() == 'c') {
2342         if (s[3].unicode() == 'e') {
2343           if (s[4].unicode() == 'p') {
2344             if (s[5].unicode() == 't') {
2345               if (s[6].unicode() == 'i') {
2346                 if (s[7].unicode() == 'o') {
2347                   if (s[8].unicode() == 'n') {
2348                     return T_DOXY_EXCEPTION;
2349                   }
2350                 }
2351               }
2352             }
2353           }
2354         }
2355       }
2356     }
2357   }
2358   else if (s[0].unicode() == 'i') {
2359     if (s[1].unicode() == 'd') {
2360       if (s[2].unicode() == 'l') {
2361         if (s[3].unicode() == 'e') {
2362           if (s[4].unicode() == 'x') {
2363             if (s[5].unicode() == 'c') {
2364               if (s[6].unicode() == 'e') {
2365                 if (s[7].unicode() == 'p') {
2366                   if (s[8].unicode() == 't') {
2367                     return T_DOXY_IDLEXCEPT;
2368                   }
2369                 }
2370               }
2371             }
2372           }
2373         }
2374       }
2375     }
2376     else if (s[1].unicode() == 'n') {
2377       if (s[2].unicode() == 'd') {
2378         if (s[3].unicode() == 'e') {
2379           if (s[4].unicode() == 'x') {
2380             if (s[5].unicode() == 'p') {
2381               if (s[6].unicode() == 'a') {
2382                 if (s[7].unicode() == 'g') {
2383                   if (s[8].unicode() == 'e') {
2384                     return T_DOXY_INDEXPAGE;
2385                   }
2386                 }
2387               }
2388             }
2389           }
2390         }
2391       }
2392       else if (s[2].unicode() == 't') {
2393         if (s[3].unicode() == 'e') {
2394           if (s[4].unicode() == 'r') {
2395             if (s[5].unicode() == 'f') {
2396               if (s[6].unicode() == 'a') {
2397                 if (s[7].unicode() == 'c') {
2398                   if (s[8].unicode() == 'e') {
2399                     return T_DOXY_INTERFACE;
2400                   }
2401                 }
2402               }
2403             }
2404           }
2405         }
2406       }
2407       else if (s[2].unicode() == 'v') {
2408         if (s[3].unicode() == 'a') {
2409           if (s[4].unicode() == 'r') {
2410             if (s[5].unicode() == 'i') {
2411               if (s[6].unicode() == 'a') {
2412                 if (s[7].unicode() == 'n') {
2413                   if (s[8].unicode() == 't') {
2414                     return T_DOXY_INVARIANT;
2415                   }
2416                 }
2417               }
2418             }
2419           }
2420         }
2421       }
2422     }
2423   }
2424   else if (s[0].unicode() == 'l') {
2425     if (s[1].unicode() == 'a') {
2426       if (s[2].unicode() == 't') {
2427         if (s[3].unicode() == 'e') {
2428           if (s[4].unicode() == 'x') {
2429             if (s[5].unicode() == 'o') {
2430               if (s[6].unicode() == 'n') {
2431                 if (s[7].unicode() == 'l') {
2432                   if (s[8].unicode() == 'y') {
2433                     return T_DOXY_LATEXONLY;
2434                   }
2435                 }
2436               }
2437             }
2438           }
2439         }
2440       }
2441     }
2442   }
2443   else if (s[0].unicode() == 'm') {
2444     if (s[1].unicode() == 'a') {
2445       if (s[2].unicode() == 'i') {
2446         if (s[3].unicode() == 'n') {
2447           if (s[4].unicode() == 'c') {
2448             if (s[5].unicode() == 'l') {
2449               if (s[6].unicode() == 'a') {
2450                 if (s[7].unicode() == 's') {
2451                   if (s[8].unicode() == 's') {
2452                     return T_DOXY_MAINCLASS;
2453                   }
2454                 }
2455               }
2456             }
2457           }
2458         }
2459       }
2460     }
2461   }
2462   else if (s[0].unicode() == 'n') {
2463     if (s[1].unicode() == 'a') {
2464       if (s[2].unicode() == 'm') {
2465         if (s[3].unicode() == 'e') {
2466           if (s[4].unicode() == 's') {
2467             if (s[5].unicode() == 'p') {
2468               if (s[6].unicode() == 'a') {
2469                 if (s[7].unicode() == 'c') {
2470                   if (s[8].unicode() == 'e') {
2471                     return T_DOXY_NAMESPACE;
2472                   }
2473                 }
2474               }
2475             }
2476           }
2477         }
2478       }
2479     }
2480   }
2481   else if (s[0].unicode() == 'o') {
2482     if (s[1].unicode() == 'm') {
2483       if (s[2].unicode() == 'i') {
2484         if (s[3].unicode() == 't') {
2485           if (s[4].unicode() == 'v') {
2486             if (s[5].unicode() == 'a') {
2487               if (s[6].unicode() == 'l') {
2488                 if (s[7].unicode() == 'u') {
2489                   if (s[8].unicode() == 'e') {
2490                     return T_DOXY_OMITVALUE;
2491                   }
2492                 }
2493               }
2494             }
2495           }
2496         }
2497       }
2498     }
2499   }
2500   else if (s[0].unicode() == 'p') {
2501     if (s[1].unicode() == 'a') {
2502       if (s[2].unicode() == 'r') {
2503         if (s[3].unicode() == 'a') {
2504           if (s[4].unicode() == 'g') {
2505             if (s[5].unicode() == 'r') {
2506               if (s[6].unicode() == 'a') {
2507                 if (s[7].unicode() == 'p') {
2508                   if (s[8].unicode() == 'h') {
2509                     return T_DOXY_PARAGRAPH;
2510                   }
2511                 }
2512               }
2513             }
2514           }
2515         }
2516       }
2517     }
2518     else if (s[1].unicode() == 'r') {
2519       if (s[2].unicode() == 'i') {
2520         if (s[3].unicode() == 'n') {
2521           if (s[4].unicode() == 't') {
2522             if (s[5].unicode() == 'l') {
2523               if (s[6].unicode() == 'i') {
2524                 if (s[7].unicode() == 'n') {
2525                   if (s[8].unicode() == 'e') {
2526                     return T_DOXY_PRINTLINE;
2527                   }
2528                 }
2529               }
2530             }
2531           }
2532         }
2533       }
2534       else if (s[2].unicode() == 'o') {
2535         if (s[3].unicode() == 't') {
2536           if (s[4].unicode() == 'e') {
2537             if (s[5].unicode() == 'c') {
2538               if (s[6].unicode() == 't') {
2539                 if (s[7].unicode() == 'e') {
2540                   if (s[8].unicode() == 'd') {
2541                     return T_DOXY_PROTECTED;
2542                   }
2543                 }
2544               }
2545             }
2546           }
2547         }
2548       }
2549     }
2550   }
2551   else if (s[0].unicode() == 'q') {
2552     if (s[1].unicode() == 'm') {
2553       if (s[2].unicode() == 'l') {
2554         if (s[3].unicode() == 'm') {
2555           if (s[4].unicode() == 'e') {
2556             if (s[5].unicode() == 't') {
2557               if (s[6].unicode() == 'h') {
2558                 if (s[7].unicode() == 'o') {
2559                   if (s[8].unicode() == 'd') {
2560                     return T_DOXY_QMLMETHOD;
2561                   }
2562                 }
2563               }
2564             }
2565           }
2566           else if (s[4].unicode() == 'o') {
2567             if (s[5].unicode() == 'd') {
2568               if (s[6].unicode() == 'u') {
2569                 if (s[7].unicode() == 'l') {
2570                   if (s[8].unicode() == 'e') {
2571                     return T_DOXY_QMLMODULE;
2572                   }
2573                 }
2574               }
2575             }
2576           }
2577         }
2578         else if (s[3].unicode() == 's') {
2579           if (s[4].unicode() == 'i') {
2580             if (s[5].unicode() == 'g') {
2581               if (s[6].unicode() == 'n') {
2582                 if (s[7].unicode() == 'a') {
2583                   if (s[8].unicode() == 'l') {
2584                     return T_DOXY_QMLSIGNAL;
2585                   }
2586                 }
2587               }
2588             }
2589           }
2590         }
2591       }
2592     }
2593     else if (s[1].unicode() == 'u') {
2594       if (s[2].unicode() == 'o') {
2595         if (s[3].unicode() == 't') {
2596           if (s[4].unicode() == 'a') {
2597             if (s[5].unicode() == 't') {
2598               if (s[6].unicode() == 'i') {
2599                 if (s[7].unicode() == 'o') {
2600                   if (s[8].unicode() == 'n') {
2601                     return T_DOXY_QUOTATION;
2602                   }
2603                 }
2604               }
2605             }
2606           }
2607           else if (s[4].unicode() == 'e') {
2608             if (s[5].unicode() == 'f') {
2609               if (s[6].unicode() == 'i') {
2610                 if (s[7].unicode() == 'l') {
2611                   if (s[8].unicode() == 'e') {
2612                     return T_DOXY_QUOTEFILE;
2613                   }
2614                 }
2615               }
2616             }
2617           }
2618         }
2619       }
2620     }
2621   }
2622   else if (s[0].unicode() == 'r') {
2623     if (s[1].unicode() == 'e') {
2624       if (s[2].unicode() == 'e') {
2625         if (s[3].unicode() == 'n') {
2626           if (s[4].unicode() == 't') {
2627             if (s[5].unicode() == 'r') {
2628               if (s[6].unicode() == 'a') {
2629                 if (s[7].unicode() == 'n') {
2630                   if (s[8].unicode() == 't') {
2631                     return T_DOXY_REENTRANT;
2632                   }
2633                 }
2634               }
2635             }
2636           }
2637         }
2638       }
2639     }
2640   }
2641   else if (s[0].unicode() == 's') {
2642     if (s[1].unicode() == 'k') {
2643       if (s[2].unicode() == 'i') {
2644         if (s[3].unicode() == 'p') {
2645           if (s[4].unicode() == 'u') {
2646             if (s[5].unicode() == 'n') {
2647               if (s[6].unicode() == 't') {
2648                 if (s[7].unicode() == 'i') {
2649                   if (s[8].unicode() == 'l') {
2650                     return T_DOXY_SKIPUNTIL;
2651                   }
2652                 }
2653               }
2654             }
2655           }
2656         }
2657       }
2658     }
2659     else if (s[1].unicode() == 't') {
2660       if (s[2].unicode() == 'a') {
2661         if (s[3].unicode() == 'r') {
2662           if (s[4].unicode() == 't') {
2663             if (s[5].unicode() == 'p') {
2664               if (s[6].unicode() == 'a') {
2665                 if (s[7].unicode() == 'g') {
2666                   if (s[8].unicode() == 'e') {
2667                     return T_DOXY_STARTPAGE;
2668                   }
2669                 }
2670               }
2671             }
2672           }
2673         }
2674       }
2675     }
2676   }
2677   else if (s[0].unicode() == 'u') {
2678     if (s[1].unicode() == 'i') {
2679       if (s[2].unicode() == 'c') {
2680         if (s[3].unicode() == 'o') {
2681           if (s[4].unicode() == 'n') {
2682             if (s[5].unicode() == 't') {
2683               if (s[6].unicode() == 'r') {
2684                 if (s[7].unicode() == 'o') {
2685                   if (s[8].unicode() == 'l') {
2686                     return T_DOXY_UICONTROL;
2687                   }
2688                 }
2689               }
2690             }
2691           }
2692         }
2693       }
2694     }
2695     else if (s[1].unicode() == 'n') {
2696       if (s[2].unicode() == 'd') {
2697         if (s[3].unicode() == 'e') {
2698           if (s[4].unicode() == 'r') {
2699             if (s[5].unicode() == 'l') {
2700               if (s[6].unicode() == 'i') {
2701                 if (s[7].unicode() == 'n') {
2702                   if (s[8].unicode() == 'e') {
2703                     return T_DOXY_UNDERLINE;
2704                   }
2705                 }
2706               }
2707             }
2708           }
2709         }
2710       }
2711     }
2712   }
2713   else if (s[0].unicode() == 'w') {
2714     if (s[1].unicode() == 'e') {
2715       if (s[2].unicode() == 'a') {
2716         if (s[3].unicode() == 'k') {
2717           if (s[4].unicode() == 'g') {
2718             if (s[5].unicode() == 'r') {
2719               if (s[6].unicode() == 'o') {
2720                 if (s[7].unicode() == 'u') {
2721                   if (s[8].unicode() == 'p') {
2722                     return T_DOXY_WEAKGROUP;
2723                   }
2724                 }
2725               }
2726             }
2727           }
2728         }
2729       }
2730     }
2731   }
2732   return T_DOXY_IDENTIFIER;
2733 }
2734 
classify10(const QChar * s)2735 static inline int classify10(const QChar *s) {
2736   if (s[0].unicode() == 'a') {
2737     if (s[1].unicode() == 'd') {
2738       if (s[2].unicode() == 'd') {
2739         if (s[3].unicode() == 't') {
2740           if (s[4].unicode() == 'o') {
2741             if (s[5].unicode() == 'g') {
2742               if (s[6].unicode() == 'r') {
2743                 if (s[7].unicode() == 'o') {
2744                   if (s[8].unicode() == 'u') {
2745                     if (s[9].unicode() == 'p') {
2746                       return T_DOXY_ADDTOGROUP;
2747                     }
2748                   }
2749                 }
2750               }
2751             }
2752           }
2753         }
2754       }
2755     }
2756   }
2757   else if (s[0].unicode() == 'd') {
2758     if (s[1].unicode() == 'e') {
2759       if (s[2].unicode() == 'p') {
2760         if (s[3].unicode() == 'r') {
2761           if (s[4].unicode() == 'e') {
2762             if (s[5].unicode() == 'c') {
2763               if (s[6].unicode() == 'a') {
2764                 if (s[7].unicode() == 't') {
2765                   if (s[8].unicode() == 'e') {
2766                     if (s[9].unicode() == 'd') {
2767                       return T_DOXY_DEPRECATED;
2768                     }
2769                   }
2770                 }
2771               }
2772             }
2773           }
2774         }
2775       }
2776     }
2777   }
2778   else if (s[0].unicode() == 'e') {
2779     if (s[1].unicode() == 'n') {
2780       if (s[2].unicode() == 'd') {
2781         if (s[3].unicode() == 'c') {
2782           if (s[4].unicode() == 'h') {
2783             if (s[5].unicode() == 'a') {
2784               if (s[6].unicode() == 'p') {
2785                 if (s[7].unicode() == 't') {
2786                   if (s[8].unicode() == 'e') {
2787                     if (s[9].unicode() == 'r') {
2788                       return T_DOXY_ENDCHAPTER;
2789                     }
2790                   }
2791                 }
2792               }
2793             }
2794           }
2795         }
2796         else if (s[3].unicode() == 'm') {
2797           if (s[4].unicode() == 'a') {
2798             if (s[5].unicode() == 'n') {
2799               if (s[6].unicode() == 'o') {
2800                 if (s[7].unicode() == 'n') {
2801                   if (s[8].unicode() == 'l') {
2802                     if (s[9].unicode() == 'y') {
2803                       return T_DOXY_ENDMANONLY;
2804                     }
2805                   }
2806                 }
2807               }
2808             }
2809           }
2810         }
2811         else if (s[3].unicode() == 'r') {
2812           if (s[4].unicode() == 't') {
2813             if (s[5].unicode() == 'f') {
2814               if (s[6].unicode() == 'o') {
2815                 if (s[7].unicode() == 'n') {
2816                   if (s[8].unicode() == 'l') {
2817                     if (s[9].unicode() == 'y') {
2818                       return T_DOXY_ENDRTFONLY;
2819                     }
2820                   }
2821                 }
2822               }
2823             }
2824           }
2825         }
2826         else if (s[3].unicode() == 's') {
2827           if (s[4].unicode() == 'i') {
2828             if (s[5].unicode() == 'd') {
2829               if (s[6].unicode() == 'e') {
2830                 if (s[7].unicode() == 'b') {
2831                   if (s[8].unicode() == 'a') {
2832                     if (s[9].unicode() == 'r') {
2833                       return T_DOXY_ENDSIDEBAR;
2834                     }
2835                   }
2836                 }
2837               }
2838             }
2839           }
2840         }
2841         else if (s[3].unicode() == 'x') {
2842           if (s[4].unicode() == 'm') {
2843             if (s[5].unicode() == 'l') {
2844               if (s[6].unicode() == 'o') {
2845                 if (s[7].unicode() == 'n') {
2846                   if (s[8].unicode() == 'l') {
2847                     if (s[9].unicode() == 'y') {
2848                       return T_DOXY_ENDXMLONLY;
2849                     }
2850                   }
2851                 }
2852               }
2853             }
2854           }
2855         }
2856       }
2857     }
2858     else if (s[1].unicode() == 'x') {
2859       if (s[2].unicode() == 'c') {
2860         if (s[3].unicode() == 'e') {
2861           if (s[4].unicode() == 'p') {
2862             if (s[5].unicode() == 't') {
2863               if (s[6].unicode() == 'i') {
2864                 if (s[7].unicode() == 'o') {
2865                   if (s[8].unicode() == 'n') {
2866                     if (s[9].unicode() == 's') {
2867                       return T_DOXY_EXCEPTIONS;
2868                     }
2869                   }
2870                 }
2871               }
2872             }
2873           }
2874         }
2875       }
2876     }
2877   }
2878   else if (s[0].unicode() == 'h') {
2879     if (s[1].unicode() == 'e') {
2880       if (s[2].unicode() == 'a') {
2881         if (s[3].unicode() == 'd') {
2882           if (s[4].unicode() == 'e') {
2883             if (s[5].unicode() == 'r') {
2884               if (s[6].unicode() == 'f') {
2885                 if (s[7].unicode() == 'i') {
2886                   if (s[8].unicode() == 'l') {
2887                     if (s[9].unicode() == 'e') {
2888                       return T_DOXY_HEADERFILE;
2889                     }
2890                   }
2891                 }
2892               }
2893             }
2894           }
2895         }
2896       }
2897     }
2898   }
2899   else if (s[0].unicode() == 'i') {
2900     if (s[1].unicode() == 'm') {
2901       if (s[2].unicode() == 'p') {
2902         if (s[3].unicode() == 'l') {
2903           if (s[4].unicode() == 'e') {
2904             if (s[5].unicode() == 'm') {
2905               if (s[6].unicode() == 'e') {
2906                 if (s[7].unicode() == 'n') {
2907                   if (s[8].unicode() == 't') {
2908                     if (s[9].unicode() == 's') {
2909                       return T_DOXY_IMPLEMENTS;
2910                     }
2911                   }
2912                 }
2913               }
2914             }
2915           }
2916         }
2917       }
2918     }
2919   }
2920   else if (s[0].unicode() == 'n') {
2921     if (s[1].unicode() == 'o') {
2922       if (s[2].unicode() == 'a') {
2923         if (s[3].unicode() == 'u') {
2924           if (s[4].unicode() == 't') {
2925             if (s[5].unicode() == 'o') {
2926               if (s[6].unicode() == 'l') {
2927                 if (s[7].unicode() == 'i') {
2928                   if (s[8].unicode() == 's') {
2929                     if (s[9].unicode() == 't') {
2930                       return T_DOXY_NOAUTOLIST;
2931                     }
2932                   }
2933                 }
2934               }
2935             }
2936           }
2937         }
2938       }
2939     }
2940   }
2941   else if (s[0].unicode() == 'p') {
2942     if (s[1].unicode() == 'r') {
2943       if (s[2].unicode() == 'i') {
2944         if (s[3].unicode() == 'n') {
2945           if (s[4].unicode() == 't') {
2946             if (s[5].unicode() == 'u') {
2947               if (s[6].unicode() == 'n') {
2948                 if (s[7].unicode() == 't') {
2949                   if (s[8].unicode() == 'i') {
2950                     if (s[9].unicode() == 'l') {
2951                       return T_DOXY_PRINTUNTIL;
2952                     }
2953                   }
2954                 }
2955               }
2956             }
2957           }
2958         }
2959       }
2960     }
2961   }
2962   else if (s[0].unicode() == 'q') {
2963     if (s[1].unicode() == 't') {
2964       if (s[2].unicode() == '3') {
2965         if (s[3].unicode() == 's') {
2966           if (s[4].unicode() == 'u') {
2967             if (s[5].unicode() == 'p') {
2968               if (s[6].unicode() == 'p') {
2969                 if (s[7].unicode() == 'o') {
2970                   if (s[8].unicode() == 'r') {
2971                     if (s[9].unicode() == 't') {
2972                       return T_DOXY_QT3SUPPORT;
2973                     }
2974                   }
2975                 }
2976               }
2977             }
2978           }
2979         }
2980       }
2981     }
2982   }
2983   else if (s[0].unicode() == 's') {
2984     if (s[1].unicode() == 'e') {
2985       if (s[2].unicode() == 'c') {
2986         if (s[3].unicode() == 'r') {
2987           if (s[4].unicode() == 'e') {
2988             if (s[5].unicode() == 'f') {
2989               if (s[6].unicode() == 'l') {
2990                 if (s[7].unicode() == 'i') {
2991                   if (s[8].unicode() == 's') {
2992                     if (s[9].unicode() == 't') {
2993                       return T_DOXY_SECREFLIST;
2994                     }
2995                   }
2996                 }
2997               }
2998             }
2999           }
3000         }
3001       }
3002     }
3003     else if (s[1].unicode() == 'u') {
3004       if (s[2].unicode() == 'b') {
3005         if (s[3].unicode() == 's') {
3006           if (s[4].unicode() == 'e') {
3007             if (s[5].unicode() == 'c') {
3008               if (s[6].unicode() == 't') {
3009                 if (s[7].unicode() == 'i') {
3010                   if (s[8].unicode() == 'o') {
3011                     if (s[9].unicode() == 'n') {
3012                       return T_DOXY_SUBSECTION;
3013                     }
3014                   }
3015                 }
3016               }
3017             }
3018           }
3019         }
3020       }
3021     }
3022   }
3023   else if (s[0].unicode() == 't') {
3024     if (s[1].unicode() == 'h') {
3025       if (s[2].unicode() == 'r') {
3026         if (s[3].unicode() == 'e') {
3027           if (s[4].unicode() == 'a') {
3028             if (s[5].unicode() == 'd') {
3029               if (s[6].unicode() == 's') {
3030                 if (s[7].unicode() == 'a') {
3031                   if (s[8].unicode() == 'f') {
3032                     if (s[9].unicode() == 'e') {
3033                       return T_DOXY_THREADSAFE;
3034                     }
3035                   }
3036                 }
3037               }
3038             }
3039           }
3040         }
3041       }
3042     }
3043   }
3044   return T_DOXY_IDENTIFIER;
3045 }
3046 
classify11(const QChar * s)3047 static inline int classify11(const QChar *s) {
3048   if (s[0].unicode() == 'c') {
3049     if (s[1].unicode() == 'a') {
3050       if (s[2].unicode() == 'l') {
3051         if (s[3].unicode() == 'l') {
3052           if (s[4].unicode() == 'e') {
3053             if (s[5].unicode() == 'r') {
3054               if (s[6].unicode() == 'g') {
3055                 if (s[7].unicode() == 'r') {
3056                   if (s[8].unicode() == 'a') {
3057                     if (s[9].unicode() == 'p') {
3058                       if (s[10].unicode() == 'h') {
3059                         return T_DOXY_CALLERGRAPH;
3060                       }
3061                     }
3062                   }
3063                 }
3064               }
3065             }
3066           }
3067         }
3068       }
3069     }
3070     else if (s[1].unicode() == 'o') {
3071       if (s[2].unicode() == 'p') {
3072         if (s[3].unicode() == 'y') {
3073           if (s[4].unicode() == 'd') {
3074             if (s[5].unicode() == 'e') {
3075               if (s[6].unicode() == 't') {
3076                 if (s[7].unicode() == 'a') {
3077                   if (s[8].unicode() == 'i') {
3078                     if (s[9].unicode() == 'l') {
3079                       if (s[10].unicode() == 's') {
3080                         return T_DOXY_COPYDETAILS;
3081                       }
3082                     }
3083                   }
3084                 }
3085               }
3086             }
3087           }
3088         }
3089       }
3090     }
3091   }
3092   else if (s[0].unicode() == 'd') {
3093     if (s[1].unicode() == 'o') {
3094       if (s[2].unicode() == 'c') {
3095         if (s[3].unicode() == 'b') {
3096           if (s[4].unicode() == 'o') {
3097             if (s[5].unicode() == 'o') {
3098               if (s[6].unicode() == 'k') {
3099                 if (s[7].unicode() == 'o') {
3100                   if (s[8].unicode() == 'n') {
3101                     if (s[9].unicode() == 'l') {
3102                       if (s[10].unicode() == 'y') {
3103                         return T_DOXY_DOCBOOKONLY;
3104                       }
3105                     }
3106                   }
3107                 }
3108               }
3109             }
3110           }
3111         }
3112       }
3113       else if (s[2].unicode() == 'n') {
3114         if (s[3].unicode() == 't') {
3115           if (s[4].unicode() == 'i') {
3116             if (s[5].unicode() == 'n') {
3117               if (s[6].unicode() == 'c') {
3118                 if (s[7].unicode() == 'l') {
3119                   if (s[8].unicode() == 'u') {
3120                     if (s[9].unicode() == 'd') {
3121                       if (s[10].unicode() == 'e') {
3122                         return T_DOXY_DONTINCLUDE;
3123                       }
3124                     }
3125                   }
3126                 }
3127               }
3128             }
3129           }
3130         }
3131       }
3132     }
3133   }
3134   else if (s[0].unicode() == 'e') {
3135     if (s[1].unicode() == 'n') {
3136       if (s[2].unicode() == 'd') {
3137         if (s[3].unicode() == 'a') {
3138           if (s[4].unicode() == 'b') {
3139             if (s[5].unicode() == 's') {
3140               if (s[6].unicode() == 't') {
3141                 if (s[7].unicode() == 'r') {
3142                   if (s[8].unicode() == 'a') {
3143                     if (s[9].unicode() == 'c') {
3144                       if (s[10].unicode() == 't') {
3145                         return T_DOXY_ENDABSTRACT;
3146                       }
3147                     }
3148                   }
3149                 }
3150               }
3151             }
3152           }
3153         }
3154         else if (s[3].unicode() == 'f') {
3155           if (s[4].unicode() == 'o') {
3156             if (s[5].unicode() == 'o') {
3157               if (s[6].unicode() == 't') {
3158                 if (s[7].unicode() == 'n') {
3159                   if (s[8].unicode() == 'o') {
3160                     if (s[9].unicode() == 't') {
3161                       if (s[10].unicode() == 'e') {
3162                         return T_DOXY_ENDFOOTNOTE;
3163                       }
3164                     }
3165                   }
3166                 }
3167               }
3168             }
3169           }
3170         }
3171         else if (s[3].unicode() == 'h') {
3172           if (s[4].unicode() == 't') {
3173             if (s[5].unicode() == 'm') {
3174               if (s[6].unicode() == 'l') {
3175                 if (s[7].unicode() == 'o') {
3176                   if (s[8].unicode() == 'n') {
3177                     if (s[9].unicode() == 'l') {
3178                       if (s[10].unicode() == 'y') {
3179                         return T_DOXY_ENDHTMLONLY;
3180                       }
3181                     }
3182                   }
3183                 }
3184               }
3185             }
3186           }
3187         }
3188         else if (s[3].unicode() == 'i') {
3189           if (s[4].unicode() == 'n') {
3190             if (s[5].unicode() == 't') {
3191               if (s[6].unicode() == 'e') {
3192                 if (s[7].unicode() == 'r') {
3193                   if (s[8].unicode() == 'n') {
3194                     if (s[9].unicode() == 'a') {
3195                       if (s[10].unicode() == 'l') {
3196                         return T_DOXY_ENDINTERNAL;
3197                       }
3198                     }
3199                   }
3200                 }
3201               }
3202             }
3203           }
3204         }
3205         else if (s[3].unicode() == 'l') {
3206           if (s[4].unicode() == 'e') {
3207             if (s[5].unicode() == 'g') {
3208               if (s[6].unicode() == 'a') {
3209                 if (s[7].unicode() == 'l') {
3210                   if (s[8].unicode() == 'e') {
3211                     if (s[9].unicode() == 's') {
3212                       if (s[10].unicode() == 'e') {
3213                         return T_DOXY_ENDLEGALESE;
3214                       }
3215                     }
3216                   }
3217                 }
3218               }
3219             }
3220           }
3221         }
3222         else if (s[3].unicode() == 'p') {
3223           if (s[4].unicode() == 'a') {
3224             if (s[5].unicode() == 'r') {
3225               if (s[6].unicode() == 'b') {
3226                 if (s[7].unicode() == 'l') {
3227                   if (s[8].unicode() == 'o') {
3228                     if (s[9].unicode() == 'c') {
3229                       if (s[10].unicode() == 'k') {
3230                         return T_DOXY_ENDPARBLOCK;
3231                       }
3232                     }
3233                   }
3234                 }
3235               }
3236             }
3237           }
3238         }
3239         else if (s[3].unicode() == 's') {
3240           if (s[4].unicode() == 'e') {
3241             if (s[5].unicode() == 'c') {
3242               if (s[6].unicode() == 't') {
3243                 if (s[7].unicode() == 'i') {
3244                   if (s[8].unicode() == 'o') {
3245                     if (s[9].unicode() == 'n') {
3246                       if (s[10].unicode() == '1') {
3247                         return T_DOXY_ENDSECTION1;
3248                       }
3249                       else if (s[10].unicode() == '2') {
3250                         return T_DOXY_ENDSECTION2;
3251                       }
3252                       else if (s[10].unicode() == '3') {
3253                         return T_DOXY_ENDSECTION3;
3254                       }
3255                       else if (s[10].unicode() == '4') {
3256                         return T_DOXY_ENDSECTION4;
3257                       }
3258                     }
3259                   }
3260                 }
3261               }
3262             }
3263           }
3264         }
3265         else if (s[3].unicode() == 'v') {
3266           if (s[4].unicode() == 'e') {
3267             if (s[5].unicode() == 'r') {
3268               if (s[6].unicode() == 'b') {
3269                 if (s[7].unicode() == 'a') {
3270                   if (s[8].unicode() == 't') {
3271                     if (s[9].unicode() == 'i') {
3272                       if (s[10].unicode() == 'm') {
3273                         return T_DOXY_ENDVERBATIM;
3274                       }
3275                     }
3276                   }
3277                 }
3278               }
3279             }
3280           }
3281         }
3282       }
3283     }
3284   }
3285   else if (s[0].unicode() == 'g') {
3286     if (s[1].unicode() == 'r') {
3287       if (s[2].unicode() == 'a') {
3288         if (s[3].unicode() == 'n') {
3289           if (s[4].unicode() == 'u') {
3290             if (s[5].unicode() == 'l') {
3291               if (s[6].unicode() == 'a') {
3292                 if (s[7].unicode() == 'r') {
3293                   if (s[8].unicode() == 'i') {
3294                     if (s[9].unicode() == 't') {
3295                       if (s[10].unicode() == 'y') {
3296                         return T_DOXY_GRANULARITY;
3297                       }
3298                     }
3299                   }
3300                 }
3301               }
3302             }
3303           }
3304         }
3305       }
3306     }
3307   }
3308   else if (s[0].unicode() == 'h') {
3309     if (s[1].unicode() == 't') {
3310       if (s[2].unicode() == 'm') {
3311         if (s[3].unicode() == 'l') {
3312           if (s[4].unicode() == 'i') {
3313             if (s[5].unicode() == 'n') {
3314               if (s[6].unicode() == 'c') {
3315                 if (s[7].unicode() == 'l') {
3316                   if (s[8].unicode() == 'u') {
3317                     if (s[9].unicode() == 'd') {
3318                       if (s[10].unicode() == 'e') {
3319                         return T_DOXY_HTMLINCLUDE;
3320                       }
3321                     }
3322                   }
3323                 }
3324               }
3325             }
3326           }
3327         }
3328       }
3329     }
3330   }
3331   else if (s[0].unicode() == 'i') {
3332     if (s[1].unicode() == 'n') {
3333       if (s[2].unicode() == 'l') {
3334         if (s[3].unicode() == 'i') {
3335           if (s[4].unicode() == 'n') {
3336             if (s[5].unicode() == 'e') {
3337               if (s[6].unicode() == 'i') {
3338                 if (s[7].unicode() == 'm') {
3339                   if (s[8].unicode() == 'a') {
3340                     if (s[9].unicode() == 'g') {
3341                       if (s[10].unicode() == 'e') {
3342                         return T_DOXY_INLINEIMAGE;
3343                       }
3344                     }
3345                   }
3346                 }
3347               }
3348             }
3349           }
3350         }
3351       }
3352       else if (s[2].unicode() == 'q') {
3353         if (s[3].unicode() == 'm') {
3354           if (s[4].unicode() == 'l') {
3355             if (s[5].unicode() == 'm') {
3356               if (s[6].unicode() == 'o') {
3357                 if (s[7].unicode() == 'd') {
3358                   if (s[8].unicode() == 'u') {
3359                     if (s[9].unicode() == 'l') {
3360                       if (s[10].unicode() == 'e') {
3361                         return T_DOXY_INQMLMODULE;
3362                       }
3363                     }
3364                   }
3365                 }
3366               }
3367             }
3368           }
3369         }
3370       }
3371     }
3372   }
3373   else if (s[0].unicode() == 'p') {
3374     if (s[1].unicode() == 'r') {
3375       if (s[2].unicode() == 'e') {
3376         if (s[3].unicode() == 'l') {
3377           if (s[4].unicode() == 'i') {
3378             if (s[5].unicode() == 'm') {
3379               if (s[6].unicode() == 'i') {
3380                 if (s[7].unicode() == 'n') {
3381                   if (s[8].unicode() == 'a') {
3382                     if (s[9].unicode() == 'r') {
3383                       if (s[10].unicode() == 'y') {
3384                         return T_DOXY_PRELIMINARY;
3385                       }
3386                     }
3387                   }
3388                 }
3389               }
3390             }
3391           }
3392         }
3393       }
3394     }
3395   }
3396   else if (s[0].unicode() == 'q') {
3397     if (s[1].unicode() == 'm') {
3398       if (s[2].unicode() == 'l') {
3399         if (s[3].unicode() == 'a') {
3400           if (s[4].unicode() == 'b') {
3401             if (s[5].unicode() == 's') {
3402               if (s[6].unicode() == 't') {
3403                 if (s[7].unicode() == 'r') {
3404                   if (s[8].unicode() == 'a') {
3405                     if (s[9].unicode() == 'c') {
3406                       if (s[10].unicode() == 't') {
3407                         return T_DOXY_QMLABSTRACT;
3408                       }
3409                     }
3410                   }
3411                 }
3412               }
3413             }
3414           }
3415         }
3416         else if (s[3].unicode() == 'p') {
3417           if (s[4].unicode() == 'r') {
3418             if (s[5].unicode() == 'o') {
3419               if (s[6].unicode() == 'p') {
3420                 if (s[7].unicode() == 'e') {
3421                   if (s[8].unicode() == 'r') {
3422                     if (s[9].unicode() == 't') {
3423                       if (s[10].unicode() == 'y') {
3424                         return T_DOXY_QMLPROPERTY;
3425                       }
3426                     }
3427                   }
3428                 }
3429               }
3430             }
3431           }
3432         }
3433       }
3434     }
3435   }
3436   else if (s[0].unicode() == 'r') {
3437     if (s[1].unicode() == 'e') {
3438       if (s[2].unicode() == 'l') {
3439         if (s[3].unicode() == 'a') {
3440           if (s[4].unicode() == 't') {
3441             if (s[5].unicode() == 'e') {
3442               if (s[6].unicode() == 'd') {
3443                 if (s[7].unicode() == 'a') {
3444                   if (s[8].unicode() == 'l') {
3445                     if (s[9].unicode() == 's') {
3446                       if (s[10].unicode() == 'o') {
3447                         return T_DOXY_RELATEDALSO;
3448                       }
3449                     }
3450                   }
3451                 }
3452               }
3453               else if (s[6].unicode() == 's') {
3454                 if (s[7].unicode() == 'a') {
3455                   if (s[8].unicode() == 'l') {
3456                     if (s[9].unicode() == 's') {
3457                       if (s[10].unicode() == 'o') {
3458                         return T_DOXY_RELATESALSO;
3459                       }
3460                     }
3461                   }
3462                 }
3463               }
3464             }
3465           }
3466         }
3467       }
3468     }
3469   }
3470   else if (s[0].unicode() == 'v') {
3471     if (s[1].unicode() == 'e') {
3472       if (s[2].unicode() == 'r') {
3473         if (s[3].unicode() == 'b') {
3474           if (s[4].unicode() == 'i') {
3475             if (s[5].unicode() == 'n') {
3476               if (s[6].unicode() == 'c') {
3477                 if (s[7].unicode() == 'l') {
3478                   if (s[8].unicode() == 'u') {
3479                     if (s[9].unicode() == 'd') {
3480                       if (s[10].unicode() == 'e') {
3481                         return T_DOXY_VERBINCLUDE;
3482                       }
3483                     }
3484                   }
3485                 }
3486               }
3487             }
3488           }
3489         }
3490       }
3491     }
3492   }
3493   return T_DOXY_IDENTIFIER;
3494 }
3495 
classify12(const QChar * s)3496 static inline int classify12(const QChar *s) {
3497   if (s[0].unicode() == 'c') {
3498     if (s[1].unicode() == 'o') {
3499       if (s[2].unicode() == 'n') {
3500         if (s[3].unicode() == 't') {
3501           if (s[4].unicode() == 'e') {
3502             if (s[5].unicode() == 'n') {
3503               if (s[6].unicode() == 't') {
3504                 if (s[7].unicode() == 's') {
3505                   if (s[8].unicode() == 'p') {
3506                     if (s[9].unicode() == 'a') {
3507                       if (s[10].unicode() == 'g') {
3508                         if (s[11].unicode() == 'e') {
3509                           return T_DOXY_CONTENTSPAGE;
3510                         }
3511                       }
3512                     }
3513                   }
3514                 }
3515               }
3516             }
3517           }
3518         }
3519       }
3520     }
3521   }
3522   else if (s[0].unicode() == 'e') {
3523     if (s[1].unicode() == 'n') {
3524       if (s[2].unicode() == 'd') {
3525         if (s[3].unicode() == 'l') {
3526           if (s[4].unicode() == 'a') {
3527             if (s[5].unicode() == 't') {
3528               if (s[6].unicode() == 'e') {
3529                 if (s[7].unicode() == 'x') {
3530                   if (s[8].unicode() == 'o') {
3531                     if (s[9].unicode() == 'n') {
3532                       if (s[10].unicode() == 'l') {
3533                         if (s[11].unicode() == 'y') {
3534                           return T_DOXY_ENDLATEXONLY;
3535                         }
3536                       }
3537                     }
3538                   }
3539                 }
3540               }
3541             }
3542           }
3543         }
3544         else if (s[3].unicode() == 'q') {
3545           if (s[4].unicode() == 'u') {
3546             if (s[5].unicode() == 'o') {
3547               if (s[6].unicode() == 't') {
3548                 if (s[7].unicode() == 'a') {
3549                   if (s[8].unicode() == 't') {
3550                     if (s[9].unicode() == 'i') {
3551                       if (s[10].unicode() == 'o') {
3552                         if (s[11].unicode() == 'n') {
3553                           return T_DOXY_ENDQUOTATION;
3554                         }
3555                       }
3556                     }
3557                   }
3558                 }
3559               }
3560             }
3561           }
3562         }
3563       }
3564     }
3565     else if (s[1].unicode() == 'x') {
3566       if (s[2].unicode() == 't') {
3567         if (s[3].unicode() == 'e') {
3568           if (s[4].unicode() == 'r') {
3569             if (s[5].unicode() == 'n') {
3570               if (s[6].unicode() == 'a') {
3571                 if (s[7].unicode() == 'l') {
3572                   if (s[8].unicode() == 'p') {
3573                     if (s[9].unicode() == 'a') {
3574                       if (s[10].unicode() == 'g') {
3575                         if (s[11].unicode() == 'e') {
3576                           return T_DOXY_EXTERNALPAGE;
3577                         }
3578                       }
3579                     }
3580                   }
3581                 }
3582               }
3583             }
3584           }
3585         }
3586       }
3587     }
3588   }
3589   else if (s[0].unicode() == 'g') {
3590     if (s[1].unicode() == 'e') {
3591       if (s[2].unicode() == 'n') {
3592         if (s[3].unicode() == 'e') {
3593           if (s[4].unicode() == 'r') {
3594             if (s[5].unicode() == 'a') {
3595               if (s[6].unicode() == 't') {
3596                 if (s[7].unicode() == 'e') {
3597                   if (s[8].unicode() == 'l') {
3598                     if (s[9].unicode() == 'i') {
3599                       if (s[10].unicode() == 's') {
3600                         if (s[11].unicode() == 't') {
3601                           return T_DOXY_GENERATELIST;
3602                         }
3603                       }
3604                     }
3605                   }
3606                 }
3607               }
3608             }
3609           }
3610         }
3611       }
3612     }
3613   }
3614   else if (s[0].unicode() == 'i') {
3615     if (s[1].unicode() == 'n') {
3616       if (s[2].unicode() == 'h') {
3617         if (s[3].unicode() == 'e') {
3618           if (s[4].unicode() == 'a') {
3619             if (s[5].unicode() == 'd') {
3620               if (s[6].unicode() == 'e') {
3621                 if (s[7].unicode() == 'r') {
3622                   if (s[8].unicode() == 'f') {
3623                     if (s[9].unicode() == 'i') {
3624                       if (s[10].unicode() == 'l') {
3625                         if (s[11].unicode() == 'e') {
3626                           return T_DOXY_INHEADERFILE;
3627                         }
3628                       }
3629                     }
3630                   }
3631                 }
3632               }
3633             }
3634           }
3635         }
3636       }
3637       else if (s[2].unicode() == 's') {
3638         if (s[3].unicode() == 't') {
3639           if (s[4].unicode() == 'a') {
3640             if (s[5].unicode() == 'n') {
3641               if (s[6].unicode() == 't') {
3642                 if (s[7].unicode() == 'i') {
3643                   if (s[8].unicode() == 'a') {
3644                     if (s[9].unicode() == 't') {
3645                       if (s[10].unicode() == 'e') {
3646                         if (s[11].unicode() == 's') {
3647                           return T_DOXY_INSTANTIATES;
3648                         }
3649                       }
3650                     }
3651                   }
3652                 }
3653               }
3654             }
3655           }
3656         }
3657       }
3658     }
3659   }
3660   else if (s[0].unicode() == 'l') {
3661     if (s[1].unicode() == 'a') {
3662       if (s[2].unicode() == 't') {
3663         if (s[3].unicode() == 'e') {
3664           if (s[4].unicode() == 'x') {
3665             if (s[5].unicode() == 'i') {
3666               if (s[6].unicode() == 'n') {
3667                 if (s[7].unicode() == 'c') {
3668                   if (s[8].unicode() == 'l') {
3669                     if (s[9].unicode() == 'u') {
3670                       if (s[10].unicode() == 'd') {
3671                         if (s[11].unicode() == 'e') {
3672                           return T_DOXY_LATEXINCLUDE;
3673                         }
3674                       }
3675                     }
3676                   }
3677                 }
3678               }
3679             }
3680           }
3681         }
3682       }
3683     }
3684   }
3685   else if (s[0].unicode() == 'n') {
3686     if (s[1].unicode() == 'o') {
3687       if (s[2].unicode() == 'n') {
3688         if (s[3].unicode() == 'r') {
3689           if (s[4].unicode() == 'e') {
3690             if (s[5].unicode() == 'e') {
3691               if (s[6].unicode() == 'n') {
3692                 if (s[7].unicode() == 't') {
3693                   if (s[8].unicode() == 'r') {
3694                     if (s[9].unicode() == 'a') {
3695                       if (s[10].unicode() == 'n') {
3696                         if (s[11].unicode() == 't') {
3697                           return T_DOXY_NONREENTRANT;
3698                         }
3699                       }
3700                     }
3701                   }
3702                 }
3703               }
3704             }
3705           }
3706         }
3707       }
3708     }
3709   }
3710   else if (s[0].unicode() == 'p') {
3711     if (s[1].unicode() == 'r') {
3712       if (s[2].unicode() == 'e') {
3713         if (s[3].unicode() == 'v') {
3714           if (s[4].unicode() == 'i') {
3715             if (s[5].unicode() == 'o') {
3716               if (s[6].unicode() == 'u') {
3717                 if (s[7].unicode() == 's') {
3718                   if (s[8].unicode() == 'p') {
3719                     if (s[9].unicode() == 'a') {
3720                       if (s[10].unicode() == 'g') {
3721                         if (s[11].unicode() == 'e') {
3722                           return T_DOXY_PREVIOUSPAGE;
3723                         }
3724                       }
3725                     }
3726                   }
3727                 }
3728               }
3729             }
3730           }
3731         }
3732       }
3733     }
3734   }
3735   else if (s[0].unicode() == 'q') {
3736     if (s[1].unicode() == 'm') {
3737       if (s[2].unicode() == 'l') {
3738         if (s[3].unicode() == 'b') {
3739           if (s[4].unicode() == 'a') {
3740             if (s[5].unicode() == 's') {
3741               if (s[6].unicode() == 'i') {
3742                 if (s[7].unicode() == 'c') {
3743                   if (s[8].unicode() == 't') {
3744                     if (s[9].unicode() == 'y') {
3745                       if (s[10].unicode() == 'p') {
3746                         if (s[11].unicode() == 'e') {
3747                           return T_DOXY_QMLBASICTYPE;
3748                         }
3749                       }
3750                     }
3751                   }
3752                 }
3753               }
3754             }
3755           }
3756         }
3757       }
3758     }
3759   }
3760   return T_DOXY_IDENTIFIER;
3761 }
3762 
classify13(const QChar * s)3763 static inline int classify13(const QChar *s) {
3764   if (s[0].unicode() == 'a') {
3765     if (s[1].unicode() == 'n') {
3766       if (s[2].unicode() == 'n') {
3767         if (s[3].unicode() == 'o') {
3768           if (s[4].unicode() == 't') {
3769             if (s[5].unicode() == 'a') {
3770               if (s[6].unicode() == 't') {
3771                 if (s[7].unicode() == 'e') {
3772                   if (s[8].unicode() == 'd') {
3773                     if (s[9].unicode() == 'l') {
3774                       if (s[10].unicode() == 'i') {
3775                         if (s[11].unicode() == 's') {
3776                           if (s[12].unicode() == 't') {
3777                             return T_DOXY_ANNOTATEDLIST;
3778                           }
3779                         }
3780                       }
3781                     }
3782                   }
3783                 }
3784               }
3785             }
3786           }
3787         }
3788       }
3789     }
3790   }
3791   else if (s[0].unicode() == 'e') {
3792     if (s[1].unicode() == 'n') {
3793       if (s[2].unicode() == 'd') {
3794         if (s[3].unicode() == 's') {
3795           if (s[4].unicode() == 'e') {
3796             if (s[5].unicode() == 'c') {
3797               if (s[6].unicode() == 'r') {
3798                 if (s[7].unicode() == 'e') {
3799                   if (s[8].unicode() == 'f') {
3800                     if (s[9].unicode() == 'l') {
3801                       if (s[10].unicode() == 'i') {
3802                         if (s[11].unicode() == 's') {
3803                           if (s[12].unicode() == 't') {
3804                             return T_DOXY_ENDSECREFLIST;
3805                           }
3806                         }
3807                       }
3808                     }
3809                   }
3810                 }
3811               }
3812             }
3813           }
3814         }
3815       }
3816     }
3817   }
3818   else if (s[0].unicode() == 'h') {
3819     if (s[1].unicode() == 'i') {
3820       if (s[2].unicode() == 'd') {
3821         if (s[3].unicode() == 'e') {
3822           if (s[4].unicode() == 'c') {
3823             if (s[5].unicode() == 'a') {
3824               if (s[6].unicode() == 'l') {
3825                 if (s[7].unicode() == 'l') {
3826                   if (s[8].unicode() == 'g') {
3827                     if (s[9].unicode() == 'r') {
3828                       if (s[10].unicode() == 'a') {
3829                         if (s[11].unicode() == 'p') {
3830                           if (s[12].unicode() == 'h') {
3831                             return T_DOXY_HIDECALLGRAPH;
3832                           }
3833                         }
3834                       }
3835                     }
3836                   }
3837                 }
3838               }
3839             }
3840           }
3841         }
3842       }
3843     }
3844   }
3845   else if (s[0].unicode() == 'i') {
3846     if (s[1].unicode() == 'n') {
3847       if (s[2].unicode() == 'c') {
3848         if (s[3].unicode() == 'l') {
3849           if (s[4].unicode() == 'u') {
3850             if (s[5].unicode() == 'd') {
3851               if (s[6].unicode() == 'e') {
3852                 if (s[7].unicode() == 'l') {
3853                   if (s[8].unicode() == 'i') {
3854                     if (s[9].unicode() == 'n') {
3855                       if (s[10].unicode() == 'e') {
3856                         if (s[11].unicode() == 'n') {
3857                           if (s[12].unicode() == 'o') {
3858                             return T_DOXY_INCLUDELINENO;
3859                           }
3860                         }
3861                       }
3862                     }
3863                   }
3864                 }
3865               }
3866             }
3867           }
3868         }
3869       }
3870       else if (s[2].unicode() == 'p') {
3871         if (s[3].unicode() == 'u') {
3872           if (s[4].unicode() == 'b') {
3873             if (s[5].unicode() == 'l') {
3874               if (s[6].unicode() == 'i') {
3875                 if (s[7].unicode() == 'c') {
3876                   if (s[8].unicode() == 'g') {
3877                     if (s[9].unicode() == 'r') {
3878                       if (s[10].unicode() == 'o') {
3879                         if (s[11].unicode() == 'u') {
3880                           if (s[12].unicode() == 'p') {
3881                             return T_DOXY_INPUBLICGROUP;
3882                           }
3883                         }
3884                       }
3885                     }
3886                   }
3887                 }
3888               }
3889             }
3890           }
3891         }
3892       }
3893     }
3894   }
3895   else if (s[0].unicode() == 'n') {
3896     if (s[1].unicode() == 'o') {
3897       if (s[2].unicode() == 's') {
3898         if (s[3].unicode() == 'u') {
3899           if (s[4].unicode() == 'b') {
3900             if (s[5].unicode() == 'g') {
3901               if (s[6].unicode() == 'r') {
3902                 if (s[7].unicode() == 'o') {
3903                   if (s[8].unicode() == 'u') {
3904                     if (s[9].unicode() == 'p') {
3905                       if (s[10].unicode() == 'i') {
3906                         if (s[11].unicode() == 'n') {
3907                           if (s[12].unicode() == 'g') {
3908                             return T_DOXY_NOSUBGROUPING;
3909                           }
3910                         }
3911                       }
3912                     }
3913                   }
3914                 }
3915               }
3916             }
3917           }
3918         }
3919       }
3920     }
3921   }
3922   else if (s[0].unicode() == 'p') {
3923     if (s[1].unicode() == 'u') {
3924       if (s[2].unicode() == 'b') {
3925         if (s[3].unicode() == 'l') {
3926           if (s[4].unicode() == 'i') {
3927             if (s[5].unicode() == 'c') {
3928               if (s[6].unicode() == 's') {
3929                 if (s[7].unicode() == 'e') {
3930                   if (s[8].unicode() == 'c') {
3931                     if (s[9].unicode() == 't') {
3932                       if (s[10].unicode() == 'i') {
3933                         if (s[11].unicode() == 'o') {
3934                           if (s[12].unicode() == 'n') {
3935                             return T_DOXY_PUBLICSECTION;
3936                           }
3937                         }
3938                       }
3939                     }
3940                   }
3941                 }
3942               }
3943             }
3944           }
3945         }
3946       }
3947     }
3948   }
3949   else if (s[0].unicode() == 'q') {
3950     if (s[1].unicode() == 'u') {
3951       if (s[2].unicode() == 'o') {
3952         if (s[3].unicode() == 't') {
3953           if (s[4].unicode() == 'e') {
3954             if (s[5].unicode() == 'f') {
3955               if (s[6].unicode() == 'r') {
3956                 if (s[7].unicode() == 'o') {
3957                   if (s[8].unicode() == 'm') {
3958                     if (s[9].unicode() == 'f') {
3959                       if (s[10].unicode() == 'i') {
3960                         if (s[11].unicode() == 'l') {
3961                           if (s[12].unicode() == 'e') {
3962                             return T_DOXY_QUOTEFROMFILE;
3963                           }
3964                         }
3965                       }
3966                     }
3967                   }
3968                 }
3969               }
3970               else if (s[6].unicode() == 'u') {
3971                 if (s[7].unicode() == 'n') {
3972                   if (s[8].unicode() == 'c') {
3973                     if (s[9].unicode() == 't') {
3974                       if (s[10].unicode() == 'i') {
3975                         if (s[11].unicode() == 'o') {
3976                           if (s[12].unicode() == 'n') {
3977                             return T_DOXY_QUOTEFUNCTION;
3978                           }
3979                         }
3980                       }
3981                     }
3982                   }
3983                 }
3984               }
3985             }
3986           }
3987         }
3988       }
3989     }
3990   }
3991   else if (s[0].unicode() == 's') {
3992     if (s[1].unicode() == 'u') {
3993       if (s[2].unicode() == 'b') {
3994         if (s[3].unicode() == 's') {
3995           if (s[4].unicode() == 'u') {
3996             if (s[5].unicode() == 'b') {
3997               if (s[6].unicode() == 's') {
3998                 if (s[7].unicode() == 'e') {
3999                   if (s[8].unicode() == 'c') {
4000                     if (s[9].unicode() == 't') {
4001                       if (s[10].unicode() == 'i') {
4002                         if (s[11].unicode() == 'o') {
4003                           if (s[12].unicode() == 'n') {
4004                             return T_DOXY_SUBSUBSECTION;
4005                           }
4006                         }
4007                       }
4008                     }
4009                   }
4010                 }
4011               }
4012             }
4013           }
4014         }
4015       }
4016     }
4017   }
4018   return T_DOXY_IDENTIFIER;
4019 }
4020 
classify14(const QChar * s)4021 static inline int classify14(const QChar *s) {
4022   if (s[0].unicode() == 'e') {
4023     if (s[1].unicode() == 'n') {
4024       if (s[2].unicode() == 'd') {
4025         if (s[3].unicode() == 'd') {
4026           if (s[4].unicode() == 'o') {
4027             if (s[5].unicode() == 'c') {
4028               if (s[6].unicode() == 'b') {
4029                 if (s[7].unicode() == 'o') {
4030                   if (s[8].unicode() == 'o') {
4031                     if (s[9].unicode() == 'k') {
4032                       if (s[10].unicode() == 'o') {
4033                         if (s[11].unicode() == 'n') {
4034                           if (s[12].unicode() == 'l') {
4035                             if (s[13].unicode() == 'y') {
4036                               return T_DOXY_ENDDOCBOOKONLY;
4037                             }
4038                           }
4039                         }
4040                       }
4041                     }
4042                   }
4043                 }
4044               }
4045             }
4046           }
4047         }
4048       }
4049     }
4050   }
4051   else if (s[0].unicode() == 'p') {
4052     if (s[1].unicode() == 'r') {
4053       if (s[2].unicode() == 'i') {
4054         if (s[3].unicode() == 'v') {
4055           if (s[4].unicode() == 'a') {
4056             if (s[5].unicode() == 't') {
4057               if (s[6].unicode() == 'e') {
4058                 if (s[7].unicode() == 's') {
4059                   if (s[8].unicode() == 'e') {
4060                     if (s[9].unicode() == 'c') {
4061                       if (s[10].unicode() == 't') {
4062                         if (s[11].unicode() == 'i') {
4063                           if (s[12].unicode() == 'o') {
4064                             if (s[13].unicode() == 'n') {
4065                               return T_DOXY_PRIVATESECTION;
4066                             }
4067                           }
4068                         }
4069                       }
4070                     }
4071                   }
4072                 }
4073               }
4074             }
4075           }
4076         }
4077       }
4078     }
4079   }
4080   return T_DOXY_IDENTIFIER;
4081 }
4082 
classify15(const QChar * s)4083 static inline int classify15(const QChar *s) {
4084   if (s[0].unicode() == 'h') {
4085     if (s[1].unicode() == 'i') {
4086       if (s[2].unicode() == 'd') {
4087         if (s[3].unicode() == 'e') {
4088           if (s[4].unicode() == 'c') {
4089             if (s[5].unicode() == 'a') {
4090               if (s[6].unicode() == 'l') {
4091                 if (s[7].unicode() == 'l') {
4092                   if (s[8].unicode() == 'e') {
4093                     if (s[9].unicode() == 'r') {
4094                       if (s[10].unicode() == 'g') {
4095                         if (s[11].unicode() == 'r') {
4096                           if (s[12].unicode() == 'a') {
4097                             if (s[13].unicode() == 'p') {
4098                               if (s[14].unicode() == 'h') {
4099                                 return T_DOXY_HIDECALLERGRAPH;
4100                               }
4101                             }
4102                           }
4103                         }
4104                       }
4105                     }
4106                   }
4107                 }
4108               }
4109             }
4110           }
4111           else if (s[4].unicode() == 'i') {
4112             if (s[5].unicode() == 'n') {
4113               if (s[6].unicode() == 'i') {
4114                 if (s[7].unicode() == 't') {
4115                   if (s[8].unicode() == 'i') {
4116                     if (s[9].unicode() == 'a') {
4117                       if (s[10].unicode() == 'l') {
4118                         if (s[11].unicode() == 'i') {
4119                           if (s[12].unicode() == 'z') {
4120                             if (s[13].unicode() == 'e') {
4121                               if (s[14].unicode() == 'r') {
4122                                 return T_DOXY_HIDEINITIALIZER;
4123                               }
4124                             }
4125                           }
4126                         }
4127                       }
4128                     }
4129                   }
4130                 }
4131               }
4132             }
4133           }
4134         }
4135       }
4136     }
4137   }
4138   else if (s[0].unicode() == 's') {
4139     if (s[1].unicode() == 'h') {
4140       if (s[2].unicode() == 'o') {
4141         if (s[3].unicode() == 'w') {
4142           if (s[4].unicode() == 'i') {
4143             if (s[5].unicode() == 'n') {
4144               if (s[6].unicode() == 'i') {
4145                 if (s[7].unicode() == 't') {
4146                   if (s[8].unicode() == 'i') {
4147                     if (s[9].unicode() == 'a') {
4148                       if (s[10].unicode() == 'l') {
4149                         if (s[11].unicode() == 'i') {
4150                           if (s[12].unicode() == 'z') {
4151                             if (s[13].unicode() == 'e') {
4152                               if (s[14].unicode() == 'r') {
4153                                 return T_DOXY_SHOWINITIALIZER;
4154                               }
4155                             }
4156                           }
4157                         }
4158                       }
4159                     }
4160                   }
4161                 }
4162               }
4163             }
4164           }
4165         }
4166       }
4167     }
4168   }
4169   else if (s[0].unicode() == 't') {
4170     if (s[1].unicode() == 'a') {
4171       if (s[2].unicode() == 'b') {
4172         if (s[3].unicode() == 'l') {
4173           if (s[4].unicode() == 'e') {
4174             if (s[5].unicode() == 'o') {
4175               if (s[6].unicode() == 'f') {
4176                 if (s[7].unicode() == 'c') {
4177                   if (s[8].unicode() == 'o') {
4178                     if (s[9].unicode() == 'n') {
4179                       if (s[10].unicode() == 't') {
4180                         if (s[11].unicode() == 'e') {
4181                           if (s[12].unicode() == 'n') {
4182                             if (s[13].unicode() == 't') {
4183                               if (s[14].unicode() == 's') {
4184                                 return T_DOXY_TABLEOFCONTENTS;
4185                               }
4186                             }
4187                           }
4188                         }
4189                       }
4190                     }
4191                   }
4192                 }
4193               }
4194             }
4195           }
4196         }
4197       }
4198     }
4199   }
4200   return T_DOXY_IDENTIFIER;
4201 }
4202 
classify16(const QChar * s)4203 static inline int classify16(const QChar *s) {
4204   if (s[0].unicode() == 'p') {
4205     if (s[1].unicode() == 'r') {
4206       if (s[2].unicode() == 'o') {
4207         if (s[3].unicode() == 't') {
4208           if (s[4].unicode() == 'e') {
4209             if (s[5].unicode() == 'c') {
4210               if (s[6].unicode() == 't') {
4211                 if (s[7].unicode() == 'e') {
4212                   if (s[8].unicode() == 'd') {
4213                     if (s[9].unicode() == 's') {
4214                       if (s[10].unicode() == 'e') {
4215                         if (s[11].unicode() == 'c') {
4216                           if (s[12].unicode() == 't') {
4217                             if (s[13].unicode() == 'i') {
4218                               if (s[14].unicode() == 'o') {
4219                                 if (s[15].unicode() == 'n') {
4220                                   return T_DOXY_PROTECTEDSECTION;
4221                                 }
4222                               }
4223                             }
4224                           }
4225                         }
4226                       }
4227                     }
4228                   }
4229                 }
4230               }
4231             }
4232           }
4233         }
4234       }
4235     }
4236   }
4237   return T_DOXY_IDENTIFIER;
4238 }
4239 
classify17(const QChar * s)4240 static inline int classify17(const QChar *s) {
4241   if (s[0].unicode() == 'q') {
4242     if (s[1].unicode() == 'm') {
4243       if (s[2].unicode() == 'l') {
4244         if (s[3].unicode() == 'a') {
4245           if (s[4].unicode() == 't') {
4246             if (s[5].unicode() == 't') {
4247               if (s[6].unicode() == 'a') {
4248                 if (s[7].unicode() == 'c') {
4249                   if (s[8].unicode() == 'h') {
4250                     if (s[9].unicode() == 'e') {
4251                       if (s[10].unicode() == 'd') {
4252                         if (s[11].unicode() == 's') {
4253                           if (s[12].unicode() == 'i') {
4254                             if (s[13].unicode() == 'g') {
4255                               if (s[14].unicode() == 'n') {
4256                                 if (s[15].unicode() == 'a') {
4257                                   if (s[16].unicode() == 'l') {
4258                                     return T_DOXY_QMLATTACHEDSIGNAL;
4259                                   }
4260                                 }
4261                               }
4262                             }
4263                           }
4264                         }
4265                       }
4266                     }
4267                   }
4268                 }
4269               }
4270             }
4271           }
4272         }
4273       }
4274     }
4275   }
4276   return T_DOXY_IDENTIFIER;
4277 }
4278 
classify19(const QChar * s)4279 static inline int classify19(const QChar *s) {
4280   if (s[0].unicode() == 'q') {
4281     if (s[1].unicode() == 'm') {
4282       if (s[2].unicode() == 'l') {
4283         if (s[3].unicode() == 'a') {
4284           if (s[4].unicode() == 't') {
4285             if (s[5].unicode() == 't') {
4286               if (s[6].unicode() == 'a') {
4287                 if (s[7].unicode() == 'c') {
4288                   if (s[8].unicode() == 'h') {
4289                     if (s[9].unicode() == 'e') {
4290                       if (s[10].unicode() == 'd') {
4291                         if (s[11].unicode() == 'p') {
4292                           if (s[12].unicode() == 'r') {
4293                             if (s[13].unicode() == 'o') {
4294                               if (s[14].unicode() == 'p') {
4295                                 if (s[15].unicode() == 'e') {
4296                                   if (s[16].unicode() == 'r') {
4297                                     if (s[17].unicode() == 't') {
4298                                       if (s[18].unicode() == 'y') {
4299                                         return T_DOXY_QMLATTACHEDPROPERTY;
4300                                       }
4301                                     }
4302                                   }
4303                                 }
4304                               }
4305                             }
4306                           }
4307                         }
4308                       }
4309                     }
4310                   }
4311                 }
4312               }
4313             }
4314           }
4315         }
4316       }
4317     }
4318   }
4319   return T_DOXY_IDENTIFIER;
4320 }
4321 
classifyDoxygenTag(const QChar * s,int n)4322 int CppTools::classifyDoxygenTag(const QChar *s, int n) {
4323   switch (n) {
4324     case 1: return classify1(s);
4325     case 2: return classify2(s);
4326     case 3: return classify3(s);
4327     case 4: return classify4(s);
4328     case 5: return classify5(s);
4329     case 6: return classify6(s);
4330     case 7: return classify7(s);
4331     case 8: return classify8(s);
4332     case 9: return classify9(s);
4333     case 10: return classify10(s);
4334     case 11: return classify11(s);
4335     case 12: return classify12(s);
4336     case 13: return classify13(s);
4337     case 14: return classify14(s);
4338     case 15: return classify15(s);
4339     case 16: return classify16(s);
4340     case 17: return classify17(s);
4341     case 19: return classify19(s);
4342     default: return T_DOXY_IDENTIFIER;
4343   } // switch
4344 }
4345