Back to home page

EIC code displayed by LXR

 
 

    


Warning, /include/clang/AST/CommentCommandInfo.inc is written in an unsupported language. File is not indexed.

0001 /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
0002 |*                                                                            *|
0003 |* A list of commands useable in documentation comments                       *|
0004 |*                                                                            *|
0005 |* Automatically generated file, do not edit!                                 *|
0006 |* From: CommentCommands.td                                                   *|
0007 |*                                                                            *|
0008 \*===----------------------------------------------------------------------===*/
0009 
0010 namespace {
0011 const CommandInfo Commands[] = {
0012   { "a", "", 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0013   { "abstract", "", 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0014   { "addindex", "", 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0015   { "addtogroup", "", 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0016   { "anchor", "", 4, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0017   { "arg", "", 5, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0018   { "attention", "", 6, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0019   { "author", "", 7, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0020   { "authors", "", 8, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0021   { "b", "", 9, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0022   { "brief", "", 10, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0023   { "bug", "", 11, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0024   { "c", "", 12, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0025   { "callgraph", "", 13, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0026   { "callback", "", 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
0027   { "callergraph", "", 15, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0028   { "category", "", 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0029   { "cite", "", 17, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0030   { "class", "", 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
0031   { "classdesign", "", 19, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0032   { "coclass", "", 20, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0033   { "code", "endcode", 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0034   { "endcode", "", 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0035   { "concept", "", 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0036   { "cond", "", 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0037   { "const", "", 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0038   { "constant", "", 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0039   { "copybrief", "", 27, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0040   { "copydetails", "", 28, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0041   { "copydoc", "", 29, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0042   { "copyright", "", 30, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0043   { "date", "", 31, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0044   { "def", "", 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0045   { "defgroup", "", 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0046   { "dependency", "", 34, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0047   { "deprecated", "", 35, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 },
0048   { "details", "", 36, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0049   { "diafile", "", 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0050   { "dir", "", 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0051   { "discussion", "", 39, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0052   { "docbookinclude", "", 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0053   { "docbookonly", "enddocbookonly", 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0054   { "enddocbookonly", "", 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0055   { "dontinclude", "", 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0056   { "dot", "enddot", 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0057   { "enddot", "", 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0058   { "dotfile", "", 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0059   { "e", "", 47, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0060   { "else", "", 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0061   { "elseif", "", 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0062   { "em", "", 50, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0063   { "emoji", "", 51, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0064   { "endcond", "", 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0065   { "endif", "", 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0066   { "enum", "", 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0067   { "example", "", 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0068   { "exception", "", 56, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0069   { "extends", "", 57, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0070   { "f{", "f}", 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0071   { "f}", "", 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0072   { "f[", "f]", 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0073   { "f]", "", 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0074   { "f$", "f$", 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0075   { "f(", "f)", 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0076   { "f)", "", 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0077   { "file", "", 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0078   { "fn", "", 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0079   { "function", "", 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
0080   { "functiongroup", "", 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
0081   { "headerfile", "", 69, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0082   { "helper", "", 70, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0083   { "helperclass", "", 71, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0084   { "helps", "", 72, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0085   { "hidecallgraph", "", 73, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0086   { "hidecallergraph", "", 74, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0087   { "hideinitializer", "", 75, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0088   { "hiderefby", "", 76, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0089   { "hiderefs", "", 77, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0090   { "htmlinclude", "", 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0091   { "htmlonly", "endhtmlonly", 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0092   { "endhtmlonly", "", 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0093   { "idlexcept", "", 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0094   { "if", "", 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0095   { "ifnot", "", 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0096   { "image", "", 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0097   { "implements", "", 85, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0098   { "include", "", 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0099   { "ingroup", "", 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0100   { "instancesize", "", 88, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0101   { "interface", "", 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
0102   { "internal", "endinternal", 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0103   { "endinternal", "", 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0104   { "invariant", "", 92, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0105   { "latexinclude", "", 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0106   { "latexonly", "endlatexonly", 94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0107   { "endlatexonly", "", 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0108   { "li", "", 96, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0109   { "line", "", 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0110   { "link", "/link", 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0111   { "/link", "", 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0112   { "mainpage", "", 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0113   { "maninclude", "", 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0114   { "manonly", "endmanonly", 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0115   { "endmanonly", "", 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0116   { "memberof", "", 104, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0117   { "method", "", 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
0118   { "methodgroup", "", 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
0119   { "msc", "endmsc", 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0120   { "endmsc", "", 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0121   { "mscfile", "", 109, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0122   { "n", "", 110, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0123   { "name", "", 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0124   { "namespace", "", 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0125   { "noop", "", 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0126   { "nosubgrouping", "", 114, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0127   { "note", "", 115, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0128   { "overload", "", 116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0129   { "ownership", "", 117, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0130   { "p", "", 118, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0131   { "page", "", 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0132   { "par", "", 120, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0133   { "parblock", "endparblock", 121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0134   { "endparblock", "", 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0135   { "paragraph", "", 123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0136   { "param", "", 124, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0137   { "performance", "", 125, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0138   { "post", "", 126, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0139   { "pre", "", 127, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0140   { "private", "", 128, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0141   { "privatesection", "", 129, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0142   { "property", "", 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0143   { "protected", "", 131, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0144   { "protectedsection", "", 132, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0145   { "protocol", "", 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
0146   { "public", "", 134, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0147   { "publicsection", "", 135, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0148   { "pure", "", 136, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0149   { "ref", "", 137, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0150   { "refitem", "", 138, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0151   { "related", "", 139, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0152   { "relatedalso", "", 140, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0153   { "relates", "", 141, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0154   { "relatesalso", "", 142, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0155   { "remark", "", 143, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0156   { "remarks", "", 144, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0157   { "result", "", 145, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0158   { "return", "", 146, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0159   { "returns", "", 147, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0160   { "retval", "", 148, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0161   { "rtfinclude", "", 149, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0162   { "rtfonly", "endrtfonly", 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0163   { "endrtfonly", "", 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0164   { "sa", "", 152, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0165   { "secreflist", "endsecreflist", 153, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0166   { "endsecreflist", "", 154, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0167   { "section", "", 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0168   { "security", "", 156, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0169   { "see", "", 157, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0170   { "seealso", "", 158, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0171   { "short", "", 159, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0172   { "showinitializer", "", 160, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0173   { "showrefby", "", 161, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0174   { "showrefs", "", 162, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0175   { "since", "", 163, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0176   { "skip", "", 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0177   { "skipline", "", 165, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0178   { "snippet", "", 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0179   { "static", "", 167, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0180   { "struct", "", 168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
0181   { "subpage", "", 169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0182   { "subsection", "", 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0183   { "subsubsection", "", 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0184   { "superclass", "", 172, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
0185   { "tableofcontents", "", 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0186   { "template", "", 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0187   { "templatefield", "", 175, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0188   { "test", "", 176, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0189   { "textblock", "/textblock", 177, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0190   { "/textblock", "", 178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0191   { "throw", "", 179, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0192   { "throws", "", 180, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0193   { "todo", "", 181, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0194   { "tparam", "", 182, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0195   { "typedef", "", 183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0196   { "startuml", "enduml", 184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0197   { "enduml", "", 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0198   { "union", "", 186, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
0199   { "until", "", 187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0200   { "var", "", 188, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
0201   { "verbinclude", "", 189, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0202   { "verbatim", "endverbatim", 190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0203   { "endverbatim", "", 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
0204   { "version", "", 192, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0205   { "warning", "", 193, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0206   { "weakgroup", "", 194, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0207   { "xrefitem", "", 195, 3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
0208   { "xmlinclude", "", 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
0209   { "xmlonly", "endxmlonly", 197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
0210   { "endxmlonly", "", 198, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }
0211 };
0212 } // unnamed namespace
0213 
0214 const CommandInfo *CommandTraits::getBuiltinCommandInfo(
0215                                          StringRef Name) {
0216   switch (Name.size()) {
0217   default: break;
0218   case 1:        // 6 strings to match.
0219     switch (Name[0]) {
0220     default: break;
0221     case 'a':    // 1 string to match.
0222       return &Commands[0];       // "a"
0223     case 'b':    // 1 string to match.
0224       return &Commands[9];       // "b"
0225     case 'c':    // 1 string to match.
0226       return &Commands[12];      // "c"
0227     case 'e':    // 1 string to match.
0228       return &Commands[47];      // "e"
0229     case 'n':    // 1 string to match.
0230       return &Commands[110];     // "n"
0231     case 'p':    // 1 string to match.
0232       return &Commands[118];     // "p"
0233     }
0234     break;
0235   case 2:        // 12 strings to match.
0236     switch (Name[0]) {
0237     default: break;
0238     case 'e':    // 1 string to match.
0239       if (Name[1] != 'm')
0240         break;
0241       return &Commands[50];      // "em"
0242     case 'f':    // 8 strings to match.
0243       switch (Name[1]) {
0244       default: break;
0245       case '$':  // 1 string to match.
0246         return &Commands[62];    // "f$"
0247       case '(':  // 1 string to match.
0248         return &Commands[63];    // "f("
0249       case ')':  // 1 string to match.
0250         return &Commands[64];    // "f)"
0251       case '[':  // 1 string to match.
0252         return &Commands[60];    // "f["
0253       case ']':  // 1 string to match.
0254         return &Commands[61];    // "f]"
0255       case 'n':  // 1 string to match.
0256         return &Commands[66];    // "fn"
0257       case '{':  // 1 string to match.
0258         return &Commands[58];    // "f{"
0259       case '}':  // 1 string to match.
0260         return &Commands[59];    // "f}"
0261       }
0262       break;
0263     case 'i':    // 1 string to match.
0264       if (Name[1] != 'f')
0265         break;
0266       return &Commands[82];      // "if"
0267     case 'l':    // 1 string to match.
0268       if (Name[1] != 'i')
0269         break;
0270       return &Commands[96];      // "li"
0271     case 's':    // 1 string to match.
0272       if (Name[1] != 'a')
0273         break;
0274       return &Commands[152];     // "sa"
0275     }
0276     break;
0277   case 3:        // 11 strings to match.
0278     switch (Name[0]) {
0279     default: break;
0280     case 'a':    // 1 string to match.
0281       if (memcmp(Name.data()+1, "rg", 2) != 0)
0282         break;
0283       return &Commands[5];       // "arg"
0284     case 'b':    // 1 string to match.
0285       if (memcmp(Name.data()+1, "ug", 2) != 0)
0286         break;
0287       return &Commands[11];      // "bug"
0288     case 'd':    // 3 strings to match.
0289       switch (Name[1]) {
0290       default: break;
0291       case 'e':  // 1 string to match.
0292         if (Name[2] != 'f')
0293           break;
0294         return &Commands[32];    // "def"
0295       case 'i':  // 1 string to match.
0296         if (Name[2] != 'r')
0297           break;
0298         return &Commands[38];    // "dir"
0299       case 'o':  // 1 string to match.
0300         if (Name[2] != 't')
0301           break;
0302         return &Commands[44];    // "dot"
0303       }
0304       break;
0305     case 'm':    // 1 string to match.
0306       if (memcmp(Name.data()+1, "sc", 2) != 0)
0307         break;
0308       return &Commands[107];     // "msc"
0309     case 'p':    // 2 strings to match.
0310       switch (Name[1]) {
0311       default: break;
0312       case 'a':  // 1 string to match.
0313         if (Name[2] != 'r')
0314           break;
0315         return &Commands[120];   // "par"
0316       case 'r':  // 1 string to match.
0317         if (Name[2] != 'e')
0318           break;
0319         return &Commands[127];   // "pre"
0320       }
0321       break;
0322     case 'r':    // 1 string to match.
0323       if (memcmp(Name.data()+1, "ef", 2) != 0)
0324         break;
0325       return &Commands[137];     // "ref"
0326     case 's':    // 1 string to match.
0327       if (memcmp(Name.data()+1, "ee", 2) != 0)
0328         break;
0329       return &Commands[157];     // "see"
0330     case 'v':    // 1 string to match.
0331       if (memcmp(Name.data()+1, "ar", 2) != 0)
0332         break;
0333       return &Commands[188];     // "var"
0334     }
0335     break;
0336   case 4:        // 18 strings to match.
0337     switch (Name[0]) {
0338     default: break;
0339     case 'c':    // 3 strings to match.
0340       switch (Name[1]) {
0341       default: break;
0342       case 'i':  // 1 string to match.
0343         if (memcmp(Name.data()+2, "te", 2) != 0)
0344           break;
0345         return &Commands[17];    // "cite"
0346       case 'o':  // 2 strings to match.
0347         switch (Name[2]) {
0348         default: break;
0349         case 'd':        // 1 string to match.
0350           if (Name[3] != 'e')
0351             break;
0352           return &Commands[21];  // "code"
0353         case 'n':        // 1 string to match.
0354           if (Name[3] != 'd')
0355             break;
0356           return &Commands[24];  // "cond"
0357         }
0358         break;
0359       }
0360       break;
0361     case 'd':    // 1 string to match.
0362       if (memcmp(Name.data()+1, "ate", 3) != 0)
0363         break;
0364       return &Commands[31];      // "date"
0365     case 'e':    // 2 strings to match.
0366       switch (Name[1]) {
0367       default: break;
0368       case 'l':  // 1 string to match.
0369         if (memcmp(Name.data()+2, "se", 2) != 0)
0370           break;
0371         return &Commands[48];    // "else"
0372       case 'n':  // 1 string to match.
0373         if (memcmp(Name.data()+2, "um", 2) != 0)
0374           break;
0375         return &Commands[54];    // "enum"
0376       }
0377       break;
0378     case 'f':    // 1 string to match.
0379       if (memcmp(Name.data()+1, "ile", 3) != 0)
0380         break;
0381       return &Commands[65];      // "file"
0382     case 'l':    // 2 strings to match.
0383       if (memcmp(Name.data()+1, "in", 2) != 0)
0384         break;
0385       switch (Name[3]) {
0386       default: break;
0387       case 'e':  // 1 string to match.
0388         return &Commands[97];    // "line"
0389       case 'k':  // 1 string to match.
0390         return &Commands[98];    // "link"
0391       }
0392       break;
0393     case 'n':    // 3 strings to match.
0394       switch (Name[1]) {
0395       default: break;
0396       case 'a':  // 1 string to match.
0397         if (memcmp(Name.data()+2, "me", 2) != 0)
0398           break;
0399         return &Commands[111];   // "name"
0400       case 'o':  // 2 strings to match.
0401         switch (Name[2]) {
0402         default: break;
0403         case 'o':        // 1 string to match.
0404           if (Name[3] != 'p')
0405             break;
0406           return &Commands[113];         // "noop"
0407         case 't':        // 1 string to match.
0408           if (Name[3] != 'e')
0409             break;
0410           return &Commands[115];         // "note"
0411         }
0412         break;
0413       }
0414       break;
0415     case 'p':    // 3 strings to match.
0416       switch (Name[1]) {
0417       default: break;
0418       case 'a':  // 1 string to match.
0419         if (memcmp(Name.data()+2, "ge", 2) != 0)
0420           break;
0421         return &Commands[119];   // "page"
0422       case 'o':  // 1 string to match.
0423         if (memcmp(Name.data()+2, "st", 2) != 0)
0424           break;
0425         return &Commands[126];   // "post"
0426       case 'u':  // 1 string to match.
0427         if (memcmp(Name.data()+2, "re", 2) != 0)
0428           break;
0429         return &Commands[136];   // "pure"
0430       }
0431       break;
0432     case 's':    // 1 string to match.
0433       if (memcmp(Name.data()+1, "kip", 3) != 0)
0434         break;
0435       return &Commands[164];     // "skip"
0436     case 't':    // 2 strings to match.
0437       switch (Name[1]) {
0438       default: break;
0439       case 'e':  // 1 string to match.
0440         if (memcmp(Name.data()+2, "st", 2) != 0)
0441           break;
0442         return &Commands[176];   // "test"
0443       case 'o':  // 1 string to match.
0444         if (memcmp(Name.data()+2, "do", 2) != 0)
0445           break;
0446         return &Commands[181];   // "todo"
0447       }
0448       break;
0449     }
0450     break;
0451   case 5:        // 15 strings to match.
0452     switch (Name[0]) {
0453     default: break;
0454     case '/':    // 1 string to match.
0455       if (memcmp(Name.data()+1, "link", 4) != 0)
0456         break;
0457       return &Commands[99];      // "/link"
0458     case 'b':    // 1 string to match.
0459       if (memcmp(Name.data()+1, "rief", 4) != 0)
0460         break;
0461       return &Commands[10];      // "brief"
0462     case 'c':    // 2 strings to match.
0463       switch (Name[1]) {
0464       default: break;
0465       case 'l':  // 1 string to match.
0466         if (memcmp(Name.data()+2, "ass", 3) != 0)
0467           break;
0468         return &Commands[18];    // "class"
0469       case 'o':  // 1 string to match.
0470         if (memcmp(Name.data()+2, "nst", 3) != 0)
0471           break;
0472         return &Commands[25];    // "const"
0473       }
0474       break;
0475     case 'e':    // 2 strings to match.
0476       switch (Name[1]) {
0477       default: break;
0478       case 'm':  // 1 string to match.
0479         if (memcmp(Name.data()+2, "oji", 3) != 0)
0480           break;
0481         return &Commands[51];    // "emoji"
0482       case 'n':  // 1 string to match.
0483         if (memcmp(Name.data()+2, "dif", 3) != 0)
0484           break;
0485         return &Commands[53];    // "endif"
0486       }
0487       break;
0488     case 'h':    // 1 string to match.
0489       if (memcmp(Name.data()+1, "elps", 4) != 0)
0490         break;
0491       return &Commands[72];      // "helps"
0492     case 'i':    // 2 strings to match.
0493       switch (Name[1]) {
0494       default: break;
0495       case 'f':  // 1 string to match.
0496         if (memcmp(Name.data()+2, "not", 3) != 0)
0497           break;
0498         return &Commands[83];    // "ifnot"
0499       case 'm':  // 1 string to match.
0500         if (memcmp(Name.data()+2, "age", 3) != 0)
0501           break;
0502         return &Commands[84];    // "image"
0503       }
0504       break;
0505     case 'p':    // 1 string to match.
0506       if (memcmp(Name.data()+1, "aram", 4) != 0)
0507         break;
0508       return &Commands[124];     // "param"
0509     case 's':    // 2 strings to match.
0510       switch (Name[1]) {
0511       default: break;
0512       case 'h':  // 1 string to match.
0513         if (memcmp(Name.data()+2, "ort", 3) != 0)
0514           break;
0515         return &Commands[159];   // "short"
0516       case 'i':  // 1 string to match.
0517         if (memcmp(Name.data()+2, "nce", 3) != 0)
0518           break;
0519         return &Commands[163];   // "since"
0520       }
0521       break;
0522     case 't':    // 1 string to match.
0523       if (memcmp(Name.data()+1, "hrow", 4) != 0)
0524         break;
0525       return &Commands[179];     // "throw"
0526     case 'u':    // 2 strings to match.
0527       if (Name[1] != 'n')
0528         break;
0529       switch (Name[2]) {
0530       default: break;
0531       case 'i':  // 1 string to match.
0532         if (memcmp(Name.data()+3, "on", 2) != 0)
0533           break;
0534         return &Commands[186];   // "union"
0535       case 't':  // 1 string to match.
0536         if (memcmp(Name.data()+3, "il", 2) != 0)
0537           break;
0538         return &Commands[187];   // "until"
0539       }
0540       break;
0541     }
0542     break;
0543   case 6:        // 17 strings to match.
0544     switch (Name[0]) {
0545     default: break;
0546     case 'a':    // 2 strings to match.
0547       switch (Name[1]) {
0548       default: break;
0549       case 'n':  // 1 string to match.
0550         if (memcmp(Name.data()+2, "chor", 4) != 0)
0551           break;
0552         return &Commands[4];     // "anchor"
0553       case 'u':  // 1 string to match.
0554         if (memcmp(Name.data()+2, "thor", 4) != 0)
0555           break;
0556         return &Commands[7];     // "author"
0557       }
0558       break;
0559     case 'e':    // 4 strings to match.
0560       switch (Name[1]) {
0561       default: break;
0562       case 'l':  // 1 string to match.
0563         if (memcmp(Name.data()+2, "seif", 4) != 0)
0564           break;
0565         return &Commands[49];    // "elseif"
0566       case 'n':  // 3 strings to match.
0567         if (Name[2] != 'd')
0568           break;
0569         switch (Name[3]) {
0570         default: break;
0571         case 'd':        // 1 string to match.
0572           if (memcmp(Name.data()+4, "ot", 2) != 0)
0573             break;
0574           return &Commands[45];  // "enddot"
0575         case 'm':        // 1 string to match.
0576           if (memcmp(Name.data()+4, "sc", 2) != 0)
0577             break;
0578           return &Commands[108];         // "endmsc"
0579         case 'u':        // 1 string to match.
0580           if (memcmp(Name.data()+4, "ml", 2) != 0)
0581             break;
0582           return &Commands[185];         // "enduml"
0583         }
0584         break;
0585       }
0586       break;
0587     case 'h':    // 1 string to match.
0588       if (memcmp(Name.data()+1, "elper", 5) != 0)
0589         break;
0590       return &Commands[70];      // "helper"
0591     case 'm':    // 1 string to match.
0592       if (memcmp(Name.data()+1, "ethod", 5) != 0)
0593         break;
0594       return &Commands[105];     // "method"
0595     case 'p':    // 1 string to match.
0596       if (memcmp(Name.data()+1, "ublic", 5) != 0)
0597         break;
0598       return &Commands[134];     // "public"
0599     case 'r':    // 4 strings to match.
0600       if (Name[1] != 'e')
0601         break;
0602       switch (Name[2]) {
0603       default: break;
0604       case 'm':  // 1 string to match.
0605         if (memcmp(Name.data()+3, "ark", 3) != 0)
0606           break;
0607         return &Commands[143];   // "remark"
0608       case 's':  // 1 string to match.
0609         if (memcmp(Name.data()+3, "ult", 3) != 0)
0610           break;
0611         return &Commands[145];   // "result"
0612       case 't':  // 2 strings to match.
0613         switch (Name[3]) {
0614         default: break;
0615         case 'u':        // 1 string to match.
0616           if (memcmp(Name.data()+4, "rn", 2) != 0)
0617             break;
0618           return &Commands[146];         // "return"
0619         case 'v':        // 1 string to match.
0620           if (memcmp(Name.data()+4, "al", 2) != 0)
0621             break;
0622           return &Commands[148];         // "retval"
0623         }
0624         break;
0625       }
0626       break;
0627     case 's':    // 2 strings to match.
0628       if (Name[1] != 't')
0629         break;
0630       switch (Name[2]) {
0631       default: break;
0632       case 'a':  // 1 string to match.
0633         if (memcmp(Name.data()+3, "tic", 3) != 0)
0634           break;
0635         return &Commands[167];   // "static"
0636       case 'r':  // 1 string to match.
0637         if (memcmp(Name.data()+3, "uct", 3) != 0)
0638           break;
0639         return &Commands[168];   // "struct"
0640       }
0641       break;
0642     case 't':    // 2 strings to match.
0643       switch (Name[1]) {
0644       default: break;
0645       case 'h':  // 1 string to match.
0646         if (memcmp(Name.data()+2, "rows", 4) != 0)
0647           break;
0648         return &Commands[180];   // "throws"
0649       case 'p':  // 1 string to match.
0650         if (memcmp(Name.data()+2, "aram", 4) != 0)
0651           break;
0652         return &Commands[182];   // "tparam"
0653       }
0654       break;
0655     }
0656     break;
0657   case 7:        // 30 strings to match.
0658     switch (Name[0]) {
0659     default: break;
0660     case 'a':    // 1 string to match.
0661       if (memcmp(Name.data()+1, "uthors", 6) != 0)
0662         break;
0663       return &Commands[8];       // "authors"
0664     case 'c':    // 3 strings to match.
0665       if (Name[1] != 'o')
0666         break;
0667       switch (Name[2]) {
0668       default: break;
0669       case 'c':  // 1 string to match.
0670         if (memcmp(Name.data()+3, "lass", 4) != 0)
0671           break;
0672         return &Commands[20];    // "coclass"
0673       case 'n':  // 1 string to match.
0674         if (memcmp(Name.data()+3, "cept", 4) != 0)
0675           break;
0676         return &Commands[23];    // "concept"
0677       case 'p':  // 1 string to match.
0678         if (memcmp(Name.data()+3, "ydoc", 4) != 0)
0679           break;
0680         return &Commands[29];    // "copydoc"
0681       }
0682       break;
0683     case 'd':    // 3 strings to match.
0684       switch (Name[1]) {
0685       default: break;
0686       case 'e':  // 1 string to match.
0687         if (memcmp(Name.data()+2, "tails", 5) != 0)
0688           break;
0689         return &Commands[36];    // "details"
0690       case 'i':  // 1 string to match.
0691         if (memcmp(Name.data()+2, "afile", 5) != 0)
0692           break;
0693         return &Commands[37];    // "diafile"
0694       case 'o':  // 1 string to match.
0695         if (memcmp(Name.data()+2, "tfile", 5) != 0)
0696           break;
0697         return &Commands[46];    // "dotfile"
0698       }
0699       break;
0700     case 'e':    // 4 strings to match.
0701       switch (Name[1]) {
0702       default: break;
0703       case 'n':  // 2 strings to match.
0704         if (memcmp(Name.data()+2, "dco", 3) != 0)
0705           break;
0706         switch (Name[5]) {
0707         default: break;
0708         case 'd':        // 1 string to match.
0709           if (Name[6] != 'e')
0710             break;
0711           return &Commands[22];  // "endcode"
0712         case 'n':        // 1 string to match.
0713           if (Name[6] != 'd')
0714             break;
0715           return &Commands[52];  // "endcond"
0716         }
0717         break;
0718       case 'x':  // 2 strings to match.
0719         switch (Name[2]) {
0720         default: break;
0721         case 'a':        // 1 string to match.
0722           if (memcmp(Name.data()+3, "mple", 4) != 0)
0723             break;
0724           return &Commands[55];  // "example"
0725         case 't':        // 1 string to match.
0726           if (memcmp(Name.data()+3, "ends", 4) != 0)
0727             break;
0728           return &Commands[57];  // "extends"
0729         }
0730         break;
0731       }
0732       break;
0733     case 'i':    // 2 strings to match.
0734       if (Name[1] != 'n')
0735         break;
0736       switch (Name[2]) {
0737       default: break;
0738       case 'c':  // 1 string to match.
0739         if (memcmp(Name.data()+3, "lude", 4) != 0)
0740           break;
0741         return &Commands[86];    // "include"
0742       case 'g':  // 1 string to match.
0743         if (memcmp(Name.data()+3, "roup", 4) != 0)
0744           break;
0745         return &Commands[87];    // "ingroup"
0746       }
0747       break;
0748     case 'm':    // 2 strings to match.
0749       switch (Name[1]) {
0750       default: break;
0751       case 'a':  // 1 string to match.
0752         if (memcmp(Name.data()+2, "nonly", 5) != 0)
0753           break;
0754         return &Commands[102];   // "manonly"
0755       case 's':  // 1 string to match.
0756         if (memcmp(Name.data()+2, "cfile", 5) != 0)
0757           break;
0758         return &Commands[109];   // "mscfile"
0759       }
0760       break;
0761     case 'p':    // 1 string to match.
0762       if (memcmp(Name.data()+1, "rivate", 6) != 0)
0763         break;
0764       return &Commands[128];     // "private"
0765     case 'r':    // 6 strings to match.
0766       switch (Name[1]) {
0767       default: break;
0768       case 'e':  // 5 strings to match.
0769         switch (Name[2]) {
0770         default: break;
0771         case 'f':        // 1 string to match.
0772           if (memcmp(Name.data()+3, "item", 4) != 0)
0773             break;
0774           return &Commands[138];         // "refitem"
0775         case 'l':        // 2 strings to match.
0776           if (memcmp(Name.data()+3, "ate", 3) != 0)
0777             break;
0778           switch (Name[6]) {
0779           default: break;
0780           case 'd':      // 1 string to match.
0781             return &Commands[139];       // "related"
0782           case 's':      // 1 string to match.
0783             return &Commands[141];       // "relates"
0784           }
0785           break;
0786         case 'm':        // 1 string to match.
0787           if (memcmp(Name.data()+3, "arks", 4) != 0)
0788             break;
0789           return &Commands[144];         // "remarks"
0790         case 't':        // 1 string to match.
0791           if (memcmp(Name.data()+3, "urns", 4) != 0)
0792             break;
0793           return &Commands[147];         // "returns"
0794         }
0795         break;
0796       case 't':  // 1 string to match.
0797         if (memcmp(Name.data()+2, "fonly", 5) != 0)
0798           break;
0799         return &Commands[150];   // "rtfonly"
0800       }
0801       break;
0802     case 's':    // 4 strings to match.
0803       switch (Name[1]) {
0804       default: break;
0805       case 'e':  // 2 strings to match.
0806         switch (Name[2]) {
0807         default: break;
0808         case 'c':        // 1 string to match.
0809           if (memcmp(Name.data()+3, "tion", 4) != 0)
0810             break;
0811           return &Commands[155];         // "section"
0812         case 'e':        // 1 string to match.
0813           if (memcmp(Name.data()+3, "also", 4) != 0)
0814             break;
0815           return &Commands[158];         // "seealso"
0816         }
0817         break;
0818       case 'n':  // 1 string to match.
0819         if (memcmp(Name.data()+2, "ippet", 5) != 0)
0820           break;
0821         return &Commands[166];   // "snippet"
0822       case 'u':  // 1 string to match.
0823         if (memcmp(Name.data()+2, "bpage", 5) != 0)
0824           break;
0825         return &Commands[169];   // "subpage"
0826       }
0827       break;
0828     case 't':    // 1 string to match.
0829       if (memcmp(Name.data()+1, "ypedef", 6) != 0)
0830         break;
0831       return &Commands[183];     // "typedef"
0832     case 'v':    // 1 string to match.
0833       if (memcmp(Name.data()+1, "ersion", 6) != 0)
0834         break;
0835       return &Commands[192];     // "version"
0836     case 'w':    // 1 string to match.
0837       if (memcmp(Name.data()+1, "arning", 6) != 0)
0838         break;
0839       return &Commands[193];     // "warning"
0840     case 'x':    // 1 string to match.
0841       if (memcmp(Name.data()+1, "mlonly", 6) != 0)
0842         break;
0843       return &Commands[197];     // "xmlonly"
0844     }
0845     break;
0846   case 8:        // 23 strings to match.
0847     switch (Name[0]) {
0848     default: break;
0849     case 'a':    // 2 strings to match.
0850       switch (Name[1]) {
0851       default: break;
0852       case 'b':  // 1 string to match.
0853         if (memcmp(Name.data()+2, "stract", 6) != 0)
0854           break;
0855         return &Commands[1];     // "abstract"
0856       case 'd':  // 1 string to match.
0857         if (memcmp(Name.data()+2, "dindex", 6) != 0)
0858           break;
0859         return &Commands[2];     // "addindex"
0860       }
0861       break;
0862     case 'c':    // 3 strings to match.
0863       switch (Name[1]) {
0864       default: break;
0865       case 'a':  // 2 strings to match.
0866         switch (Name[2]) {
0867         default: break;
0868         case 'l':        // 1 string to match.
0869           if (memcmp(Name.data()+3, "lback", 5) != 0)
0870             break;
0871           return &Commands[14];  // "callback"
0872         case 't':        // 1 string to match.
0873           if (memcmp(Name.data()+3, "egory", 5) != 0)
0874             break;
0875           return &Commands[16];  // "category"
0876         }
0877         break;
0878       case 'o':  // 1 string to match.
0879         if (memcmp(Name.data()+2, "nstant", 6) != 0)
0880           break;
0881         return &Commands[26];    // "constant"
0882       }
0883       break;
0884     case 'd':    // 1 string to match.
0885       if (memcmp(Name.data()+1, "efgroup", 7) != 0)
0886         break;
0887       return &Commands[33];      // "defgroup"
0888     case 'f':    // 1 string to match.
0889       if (memcmp(Name.data()+1, "unction", 7) != 0)
0890         break;
0891       return &Commands[67];      // "function"
0892     case 'h':    // 2 strings to match.
0893       switch (Name[1]) {
0894       default: break;
0895       case 'i':  // 1 string to match.
0896         if (memcmp(Name.data()+2, "derefs", 6) != 0)
0897           break;
0898         return &Commands[77];    // "hiderefs"
0899       case 't':  // 1 string to match.
0900         if (memcmp(Name.data()+2, "mlonly", 6) != 0)
0901           break;
0902         return &Commands[79];    // "htmlonly"
0903       }
0904       break;
0905     case 'i':    // 1 string to match.
0906       if (memcmp(Name.data()+1, "nternal", 7) != 0)
0907         break;
0908       return &Commands[90];      // "internal"
0909     case 'm':    // 2 strings to match.
0910       switch (Name[1]) {
0911       default: break;
0912       case 'a':  // 1 string to match.
0913         if (memcmp(Name.data()+2, "inpage", 6) != 0)
0914           break;
0915         return &Commands[100];   // "mainpage"
0916       case 'e':  // 1 string to match.
0917         if (memcmp(Name.data()+2, "mberof", 6) != 0)
0918           break;
0919         return &Commands[104];   // "memberof"
0920       }
0921       break;
0922     case 'o':    // 1 string to match.
0923       if (memcmp(Name.data()+1, "verload", 7) != 0)
0924         break;
0925       return &Commands[116];     // "overload"
0926     case 'p':    // 3 strings to match.
0927       switch (Name[1]) {
0928       default: break;
0929       case 'a':  // 1 string to match.
0930         if (memcmp(Name.data()+2, "rblock", 6) != 0)
0931           break;
0932         return &Commands[121];   // "parblock"
0933       case 'r':  // 2 strings to match.
0934         if (Name[2] != 'o')
0935           break;
0936         switch (Name[3]) {
0937         default: break;
0938         case 'p':        // 1 string to match.
0939           if (memcmp(Name.data()+4, "erty", 4) != 0)
0940             break;
0941           return &Commands[130];         // "property"
0942         case 't':        // 1 string to match.
0943           if (memcmp(Name.data()+4, "ocol", 4) != 0)
0944             break;
0945           return &Commands[133];         // "protocol"
0946         }
0947         break;
0948       }
0949       break;
0950     case 's':    // 4 strings to match.
0951       switch (Name[1]) {
0952       default: break;
0953       case 'e':  // 1 string to match.
0954         if (memcmp(Name.data()+2, "curity", 6) != 0)
0955           break;
0956         return &Commands[156];   // "security"
0957       case 'h':  // 1 string to match.
0958         if (memcmp(Name.data()+2, "owrefs", 6) != 0)
0959           break;
0960         return &Commands[162];   // "showrefs"
0961       case 'k':  // 1 string to match.
0962         if (memcmp(Name.data()+2, "ipline", 6) != 0)
0963           break;
0964         return &Commands[165];   // "skipline"
0965       case 't':  // 1 string to match.
0966         if (memcmp(Name.data()+2, "artuml", 6) != 0)
0967           break;
0968         return &Commands[184];   // "startuml"
0969       }
0970       break;
0971     case 't':    // 1 string to match.
0972       if (memcmp(Name.data()+1, "emplate", 7) != 0)
0973         break;
0974       return &Commands[174];     // "template"
0975     case 'v':    // 1 string to match.
0976       if (memcmp(Name.data()+1, "erbatim", 7) != 0)
0977         break;
0978       return &Commands[190];     // "verbatim"
0979     case 'x':    // 1 string to match.
0980       if (memcmp(Name.data()+1, "refitem", 7) != 0)
0981         break;
0982       return &Commands[195];     // "xrefitem"
0983     }
0984     break;
0985   case 9:        // 17 strings to match.
0986     switch (Name[0]) {
0987     default: break;
0988     case 'a':    // 1 string to match.
0989       if (memcmp(Name.data()+1, "ttention", 8) != 0)
0990         break;
0991       return &Commands[6];       // "attention"
0992     case 'c':    // 3 strings to match.
0993       switch (Name[1]) {
0994       default: break;
0995       case 'a':  // 1 string to match.
0996         if (memcmp(Name.data()+2, "llgraph", 7) != 0)
0997           break;
0998         return &Commands[13];    // "callgraph"
0999       case 'o':  // 2 strings to match.
1000         if (memcmp(Name.data()+2, "py", 2) != 0)
1001           break;
1002         switch (Name[4]) {
1003         default: break;
1004         case 'b':        // 1 string to match.
1005           if (memcmp(Name.data()+5, "rief", 4) != 0)
1006             break;
1007           return &Commands[27];  // "copybrief"
1008         case 'r':        // 1 string to match.
1009           if (memcmp(Name.data()+5, "ight", 4) != 0)
1010             break;
1011           return &Commands[30];  // "copyright"
1012         }
1013         break;
1014       }
1015       break;
1016     case 'e':    // 1 string to match.
1017       if (memcmp(Name.data()+1, "xception", 8) != 0)
1018         break;
1019       return &Commands[56];      // "exception"
1020     case 'h':    // 1 string to match.
1021       if (memcmp(Name.data()+1, "iderefby", 8) != 0)
1022         break;
1023       return &Commands[76];      // "hiderefby"
1024     case 'i':    // 3 strings to match.
1025       switch (Name[1]) {
1026       default: break;
1027       case 'd':  // 1 string to match.
1028         if (memcmp(Name.data()+2, "lexcept", 7) != 0)
1029           break;
1030         return &Commands[81];    // "idlexcept"
1031       case 'n':  // 2 strings to match.
1032         switch (Name[2]) {
1033         default: break;
1034         case 't':        // 1 string to match.
1035           if (memcmp(Name.data()+3, "erface", 6) != 0)
1036             break;
1037           return &Commands[89];  // "interface"
1038         case 'v':        // 1 string to match.
1039           if (memcmp(Name.data()+3, "ariant", 6) != 0)
1040             break;
1041           return &Commands[92];  // "invariant"
1042         }
1043         break;
1044       }
1045       break;
1046     case 'l':    // 1 string to match.
1047       if (memcmp(Name.data()+1, "atexonly", 8) != 0)
1048         break;
1049       return &Commands[94];      // "latexonly"
1050     case 'n':    // 1 string to match.
1051       if (memcmp(Name.data()+1, "amespace", 8) != 0)
1052         break;
1053       return &Commands[112];     // "namespace"
1054     case 'o':    // 1 string to match.
1055       if (memcmp(Name.data()+1, "wnership", 8) != 0)
1056         break;
1057       return &Commands[117];     // "ownership"
1058     case 'p':    // 2 strings to match.
1059       switch (Name[1]) {
1060       default: break;
1061       case 'a':  // 1 string to match.
1062         if (memcmp(Name.data()+2, "ragraph", 7) != 0)
1063           break;
1064         return &Commands[123];   // "paragraph"
1065       case 'r':  // 1 string to match.
1066         if (memcmp(Name.data()+2, "otected", 7) != 0)
1067           break;
1068         return &Commands[131];   // "protected"
1069       }
1070       break;
1071     case 's':    // 1 string to match.
1072       if (memcmp(Name.data()+1, "howrefby", 8) != 0)
1073         break;
1074       return &Commands[161];     // "showrefby"
1075     case 't':    // 1 string to match.
1076       if (memcmp(Name.data()+1, "extblock", 8) != 0)
1077         break;
1078       return &Commands[177];     // "textblock"
1079     case 'w':    // 1 string to match.
1080       if (memcmp(Name.data()+1, "eakgroup", 8) != 0)
1081         break;
1082       return &Commands[194];     // "weakgroup"
1083     }
1084     break;
1085   case 10:       // 16 strings to match.
1086     switch (Name[0]) {
1087     default: break;
1088     case '/':    // 1 string to match.
1089       if (memcmp(Name.data()+1, "textblock", 9) != 0)
1090         break;
1091       return &Commands[178];     // "/textblock"
1092     case 'a':    // 1 string to match.
1093       if (memcmp(Name.data()+1, "ddtogroup", 9) != 0)
1094         break;
1095       return &Commands[3];       // "addtogroup"
1096     case 'd':    // 3 strings to match.
1097       switch (Name[1]) {
1098       default: break;
1099       case 'e':  // 2 strings to match.
1100         if (Name[2] != 'p')
1101           break;
1102         switch (Name[3]) {
1103         default: break;
1104         case 'e':        // 1 string to match.
1105           if (memcmp(Name.data()+4, "ndency", 6) != 0)
1106             break;
1107           return &Commands[34];  // "dependency"
1108         case 'r':        // 1 string to match.
1109           if (memcmp(Name.data()+4, "ecated", 6) != 0)
1110             break;
1111           return &Commands[35];  // "deprecated"
1112         }
1113         break;
1114       case 'i':  // 1 string to match.
1115         if (memcmp(Name.data()+2, "scussion", 8) != 0)
1116           break;
1117         return &Commands[39];    // "discussion"
1118       }
1119       break;
1120     case 'e':    // 3 strings to match.
1121       if (memcmp(Name.data()+1, "nd", 2) != 0)
1122         break;
1123       switch (Name[3]) {
1124       default: break;
1125       case 'm':  // 1 string to match.
1126         if (memcmp(Name.data()+4, "anonly", 6) != 0)
1127           break;
1128         return &Commands[103];   // "endmanonly"
1129       case 'r':  // 1 string to match.
1130         if (memcmp(Name.data()+4, "tfonly", 6) != 0)
1131           break;
1132         return &Commands[151];   // "endrtfonly"
1133       case 'x':  // 1 string to match.
1134         if (memcmp(Name.data()+4, "mlonly", 6) != 0)
1135           break;
1136         return &Commands[198];   // "endxmlonly"
1137       }
1138       break;
1139     case 'h':    // 1 string to match.
1140       if (memcmp(Name.data()+1, "eaderfile", 9) != 0)
1141         break;
1142       return &Commands[69];      // "headerfile"
1143     case 'i':    // 1 string to match.
1144       if (memcmp(Name.data()+1, "mplements", 9) != 0)
1145         break;
1146       return &Commands[85];      // "implements"
1147     case 'm':    // 1 string to match.
1148       if (memcmp(Name.data()+1, "aninclude", 9) != 0)
1149         break;
1150       return &Commands[101];     // "maninclude"
1151     case 'r':    // 1 string to match.
1152       if (memcmp(Name.data()+1, "tfinclude", 9) != 0)
1153         break;
1154       return &Commands[149];     // "rtfinclude"
1155     case 's':    // 3 strings to match.
1156       switch (Name[1]) {
1157       default: break;
1158       case 'e':  // 1 string to match.
1159         if (memcmp(Name.data()+2, "creflist", 8) != 0)
1160           break;
1161         return &Commands[153];   // "secreflist"
1162       case 'u':  // 2 strings to match.
1163         switch (Name[2]) {
1164         default: break;
1165         case 'b':        // 1 string to match.
1166           if (memcmp(Name.data()+3, "section", 7) != 0)
1167             break;
1168           return &Commands[170];         // "subsection"
1169         case 'p':        // 1 string to match.
1170           if (memcmp(Name.data()+3, "erclass", 7) != 0)
1171             break;
1172           return &Commands[172];         // "superclass"
1173         }
1174         break;
1175       }
1176       break;
1177     case 'x':    // 1 string to match.
1178       if (memcmp(Name.data()+1, "mlinclude", 9) != 0)
1179         break;
1180       return &Commands[196];     // "xmlinclude"
1181     }
1182     break;
1183   case 11:       // 16 strings to match.
1184     switch (Name[0]) {
1185     default: break;
1186     case 'c':    // 3 strings to match.
1187       switch (Name[1]) {
1188       default: break;
1189       case 'a':  // 1 string to match.
1190         if (memcmp(Name.data()+2, "llergraph", 9) != 0)
1191           break;
1192         return &Commands[15];    // "callergraph"
1193       case 'l':  // 1 string to match.
1194         if (memcmp(Name.data()+2, "assdesign", 9) != 0)
1195           break;
1196         return &Commands[19];    // "classdesign"
1197       case 'o':  // 1 string to match.
1198         if (memcmp(Name.data()+2, "pydetails", 9) != 0)
1199           break;
1200         return &Commands[28];    // "copydetails"
1201       }
1202       break;
1203     case 'd':    // 2 strings to match.
1204       if (Name[1] != 'o')
1205         break;
1206       switch (Name[2]) {
1207       default: break;
1208       case 'c':  // 1 string to match.
1209         if (memcmp(Name.data()+3, "bookonly", 8) != 0)
1210           break;
1211         return &Commands[41];    // "docbookonly"
1212       case 'n':  // 1 string to match.
1213         if (memcmp(Name.data()+3, "tinclude", 8) != 0)
1214           break;
1215         return &Commands[43];    // "dontinclude"
1216       }
1217       break;
1218     case 'e':    // 4 strings to match.
1219       if (memcmp(Name.data()+1, "nd", 2) != 0)
1220         break;
1221       switch (Name[3]) {
1222       default: break;
1223       case 'h':  // 1 string to match.
1224         if (memcmp(Name.data()+4, "tmlonly", 7) != 0)
1225           break;
1226         return &Commands[80];    // "endhtmlonly"
1227       case 'i':  // 1 string to match.
1228         if (memcmp(Name.data()+4, "nternal", 7) != 0)
1229           break;
1230         return &Commands[91];    // "endinternal"
1231       case 'p':  // 1 string to match.
1232         if (memcmp(Name.data()+4, "arblock", 7) != 0)
1233           break;
1234         return &Commands[122];   // "endparblock"
1235       case 'v':  // 1 string to match.
1236         if (memcmp(Name.data()+4, "erbatim", 7) != 0)
1237           break;
1238         return &Commands[191];   // "endverbatim"
1239       }
1240       break;
1241     case 'h':    // 2 strings to match.
1242       switch (Name[1]) {
1243       default: break;
1244       case 'e':  // 1 string to match.
1245         if (memcmp(Name.data()+2, "lperclass", 9) != 0)
1246           break;
1247         return &Commands[71];    // "helperclass"
1248       case 't':  // 1 string to match.
1249         if (memcmp(Name.data()+2, "mlinclude", 9) != 0)
1250           break;
1251         return &Commands[78];    // "htmlinclude"
1252       }
1253       break;
1254     case 'm':    // 1 string to match.
1255       if (memcmp(Name.data()+1, "ethodgroup", 10) != 0)
1256         break;
1257       return &Commands[106];     // "methodgroup"
1258     case 'p':    // 1 string to match.
1259       if (memcmp(Name.data()+1, "erformance", 10) != 0)
1260         break;
1261       return &Commands[125];     // "performance"
1262     case 'r':    // 2 strings to match.
1263       if (memcmp(Name.data()+1, "elate", 5) != 0)
1264         break;
1265       switch (Name[6]) {
1266       default: break;
1267       case 'd':  // 1 string to match.
1268         if (memcmp(Name.data()+7, "also", 4) != 0)
1269           break;
1270         return &Commands[140];   // "relatedalso"
1271       case 's':  // 1 string to match.
1272         if (memcmp(Name.data()+7, "also", 4) != 0)
1273           break;
1274         return &Commands[142];   // "relatesalso"
1275       }
1276       break;
1277     case 'v':    // 1 string to match.
1278       if (memcmp(Name.data()+1, "erbinclude", 10) != 0)
1279         break;
1280       return &Commands[189];     // "verbinclude"
1281     }
1282     break;
1283   case 12:       // 3 strings to match.
1284     switch (Name[0]) {
1285     default: break;
1286     case 'e':    // 1 string to match.
1287       if (memcmp(Name.data()+1, "ndlatexonly", 11) != 0)
1288         break;
1289       return &Commands[95];      // "endlatexonly"
1290     case 'i':    // 1 string to match.
1291       if (memcmp(Name.data()+1, "nstancesize", 11) != 0)
1292         break;
1293       return &Commands[88];      // "instancesize"
1294     case 'l':    // 1 string to match.
1295       if (memcmp(Name.data()+1, "atexinclude", 11) != 0)
1296         break;
1297       return &Commands[93];      // "latexinclude"
1298     }
1299     break;
1300   case 13:       // 7 strings to match.
1301     switch (Name[0]) {
1302     default: break;
1303     case 'e':    // 1 string to match.
1304       if (memcmp(Name.data()+1, "ndsecreflist", 12) != 0)
1305         break;
1306       return &Commands[154];     // "endsecreflist"
1307     case 'f':    // 1 string to match.
1308       if (memcmp(Name.data()+1, "unctiongroup", 12) != 0)
1309         break;
1310       return &Commands[68];      // "functiongroup"
1311     case 'h':    // 1 string to match.
1312       if (memcmp(Name.data()+1, "idecallgraph", 12) != 0)
1313         break;
1314       return &Commands[73];      // "hidecallgraph"
1315     case 'n':    // 1 string to match.
1316       if (memcmp(Name.data()+1, "osubgrouping", 12) != 0)
1317         break;
1318       return &Commands[114];     // "nosubgrouping"
1319     case 'p':    // 1 string to match.
1320       if (memcmp(Name.data()+1, "ublicsection", 12) != 0)
1321         break;
1322       return &Commands[135];     // "publicsection"
1323     case 's':    // 1 string to match.
1324       if (memcmp(Name.data()+1, "ubsubsection", 12) != 0)
1325         break;
1326       return &Commands[171];     // "subsubsection"
1327     case 't':    // 1 string to match.
1328       if (memcmp(Name.data()+1, "emplatefield", 12) != 0)
1329         break;
1330       return &Commands[175];     // "templatefield"
1331     }
1332     break;
1333   case 14:       // 3 strings to match.
1334     switch (Name[0]) {
1335     default: break;
1336     case 'd':    // 1 string to match.
1337       if (memcmp(Name.data()+1, "ocbookinclude", 13) != 0)
1338         break;
1339       return &Commands[40];      // "docbookinclude"
1340     case 'e':    // 1 string to match.
1341       if (memcmp(Name.data()+1, "nddocbookonly", 13) != 0)
1342         break;
1343       return &Commands[42];      // "enddocbookonly"
1344     case 'p':    // 1 string to match.
1345       if (memcmp(Name.data()+1, "rivatesection", 13) != 0)
1346         break;
1347       return &Commands[129];     // "privatesection"
1348     }
1349     break;
1350   case 15:       // 4 strings to match.
1351     switch (Name[0]) {
1352     default: break;
1353     case 'h':    // 2 strings to match.
1354       if (memcmp(Name.data()+1, "ide", 3) != 0)
1355         break;
1356       switch (Name[4]) {
1357       default: break;
1358       case 'c':  // 1 string to match.
1359         if (memcmp(Name.data()+5, "allergraph", 10) != 0)
1360           break;
1361         return &Commands[74];    // "hidecallergraph"
1362       case 'i':  // 1 string to match.
1363         if (memcmp(Name.data()+5, "nitializer", 10) != 0)
1364           break;
1365         return &Commands[75];    // "hideinitializer"
1366       }
1367       break;
1368     case 's':    // 1 string to match.
1369       if (memcmp(Name.data()+1, "howinitializer", 14) != 0)
1370         break;
1371       return &Commands[160];     // "showinitializer"
1372     case 't':    // 1 string to match.
1373       if (memcmp(Name.data()+1, "ableofcontents", 14) != 0)
1374         break;
1375       return &Commands[173];     // "tableofcontents"
1376     }
1377     break;
1378   case 16:       // 1 string to match.
1379     if (memcmp(Name.data()+0, "protectedsection", 16) != 0)
1380       break;
1381     return &Commands[132];       // "protectedsection"
1382   }
1383   return nullptr;
1384 }
1385