Subversion Repositories QNX 8.QNX8 LLVM/Clang compiler suite

Rev

Blame | Last modification | View Log | Download | RSS feed

/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|*                                                                            *|
|* A list of commands useable in documentation comments                       *|
|*                                                                            *|
|* Automatically generated file, do not edit!                                 *|
|*                                                                            *|
\*===----------------------------------------------------------------------===*/

namespace {
const CommandInfo Commands[] = {
  { "a", "", 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "abstract", "", 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "addindex", "", 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "addtogroup", "", 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "anchor", "", 4, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "arg", "", 5, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "attention", "", 6, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "author", "", 7, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "authors", "", 8, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "b", "", 9, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "brief", "", 10, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "bug", "", 11, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "c", "", 12, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "callgraph", "", 13, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "callback", "", 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
  { "callergraph", "", 15, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "category", "", 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "cite", "", 17, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "class", "", 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
  { "classdesign", "", 19, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "coclass", "", 20, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "code", "endcode", 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endcode", "", 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "concept", "", 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "cond", "", 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "const", "", 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "constant", "", 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "copybrief", "", 27, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "copydetails", "", 28, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "copydoc", "", 29, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "copyright", "", 30, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "date", "", 31, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "def", "", 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "defgroup", "", 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "dependency", "", 34, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "deprecated", "", 35, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "details", "", 36, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "diafile", "", 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "dir", "", 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "discussion", "", 39, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "docbookinclude", "", 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "docbookonly", "enddocbookonly", 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "enddocbookonly", "", 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "dontinclude", "", 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "dot", "enddot", 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "enddot", "", 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "dotfile", "", 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "e", "", 47, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "else", "", 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "elseif", "", 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "em", "", 50, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "emoji", "", 51, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "endcond", "", 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "endif", "", 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "enum", "", 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "example", "", 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "exception", "", 56, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "extends", "", 57, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "f{", "f}", 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "f}", "", 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "f[", "f]", 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "f]", "", 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "f$", "f$", 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "f(", "f)", 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "f)", "", 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "file", "", 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "fn", "", 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "function", "", 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
  { "functiongroup", "", 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
  { "headerfile", "", 69, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "helper", "", 70, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "helperclass", "", 71, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "helps", "", 72, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "hidecallgraph", "", 73, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "hidecallergraph", "", 74, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "hideinitializer", "", 75, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "hiderefby", "", 76, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "hiderefs", "", 77, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "htmlinclude", "", 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "htmlonly", "endhtmlonly", 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endhtmlonly", "", 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "idlexcept", "", 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "if", "", 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "ifnot", "", 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "image", "", 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "implements", "", 85, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "include", "", 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "ingroup", "", 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "instancesize", "", 88, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "interface", "", 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
  { "internal", "endinternal", 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endinternal", "", 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "invariant", "", 92, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "latexinclude", "", 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "latexonly", "endlatexonly", 94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endlatexonly", "", 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "li", "", 96, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "line", "", 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "link", "/link", 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "/link", "", 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "mainpage", "", 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "maninclude", "", 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "manonly", "endmanonly", 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endmanonly", "", 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "memberof", "", 104, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "method", "", 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
  { "methodgroup", "", 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0 },
  { "msc", "endmsc", 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endmsc", "", 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "mscfile", "", 109, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "n", "", 110, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "name", "", 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "namespace", "", 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "noop", "", 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "nosubgrouping", "", 114, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "note", "", 115, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "overload", "", 116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "ownership", "", 117, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "p", "", 118, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "page", "", 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "par", "", 120, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "parblock", "endparblock", 121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endparblock", "", 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "paragraph", "", 123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "param", "", 124, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "performance", "", 125, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "post", "", 126, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "pre", "", 127, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "private", "", 128, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "privatesection", "", 129, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "property", "", 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "protected", "", 131, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "protectedsection", "", 132, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "protocol", "", 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
  { "public", "", 134, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "publicsection", "", 135, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "pure", "", 136, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "ref", "", 137, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "refitem", "", 138, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "related", "", 139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "relatedalso", "", 140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "relates", "", 141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "relatesalso", "", 142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "remark", "", 143, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "remarks", "", 144, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "result", "", 145, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "return", "", 146, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "returns", "", 147, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "retval", "", 148, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "rtfinclude", "", 149, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "rtfonly", "endrtfonly", 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endrtfonly", "", 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "sa", "", 152, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "secreflist", "endsecreflist", 153, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endsecreflist", "", 154, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "section", "", 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "security", "", 156, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "see", "", 157, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "seealso", "", 158, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "short", "", 159, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "showinitializer", "", 160, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "showrefby", "", 161, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "showrefs", "", 162, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "since", "", 163, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "skip", "", 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "skipline", "", 165, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "snippet", "", 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "static", "", 167, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "struct", "", 168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
  { "subpage", "", 169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "subsection", "", 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "subsubsection", "", 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "superclass", "", 172, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
  { "tableofcontents", "", 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "template", "", 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "templatefield", "", 175, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "test", "", 176, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "textblock", "/textblock", 177, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "/textblock", "", 178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "throw", "", 179, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "throws", "", 180, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "todo", "", 181, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "tparam", "", 182, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "typedef", "", 183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "startuml", "enduml", 184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "enduml", "", 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "union", "", 186, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0 },
  { "until", "", 187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "var", "", 188, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 },
  { "verbinclude", "", 189, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "verbatim", "endverbatim", 190, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endverbatim", "", 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
  { "version", "", 192, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "warning", "", 193, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "weakgroup", "", 194, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "xrefitem", "", 195, 3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
  { "xmlinclude", "", 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
  { "xmlonly", "endxmlonly", 197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
  { "endxmlonly", "", 198, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }
};
} // unnamed namespace

const CommandInfo *CommandTraits::getBuiltinCommandInfo(
                                         StringRef Name) {
  switch (Name.size()) {
  default: break;
  case 1:        // 6 strings to match.
    switch (Name[0]) {
    default: break;
    case 'a':    // 1 string to match.
      return &Commands[0];       // "a"
    case 'b':    // 1 string to match.
      return &Commands[9];       // "b"
    case 'c':    // 1 string to match.
      return &Commands[12];      // "c"
    case 'e':    // 1 string to match.
      return &Commands[47];      // "e"
    case 'n':    // 1 string to match.
      return &Commands[110];     // "n"
    case 'p':    // 1 string to match.
      return &Commands[118];     // "p"
    }
    break;
  case 2:        // 12 strings to match.
    switch (Name[0]) {
    default: break;
    case 'e':    // 1 string to match.
      if (Name[1] != 'm')
        break;
      return &Commands[50];      // "em"
    case 'f':    // 8 strings to match.
      switch (Name[1]) {
      default: break;
      case '$':  // 1 string to match.
        return &Commands[62];    // "f$"
      case '(':  // 1 string to match.
        return &Commands[63];    // "f("
      case ')':  // 1 string to match.
        return &Commands[64];    // "f)"
      case '[':  // 1 string to match.
        return &Commands[60];    // "f["
      case ']':  // 1 string to match.
        return &Commands[61];    // "f]"
      case 'n':  // 1 string to match.
        return &Commands[66];    // "fn"
      case '{':  // 1 string to match.
        return &Commands[58];    // "f{"
      case '}':  // 1 string to match.
        return &Commands[59];    // "f}"
      }
      break;
    case 'i':    // 1 string to match.
      if (Name[1] != 'f')
        break;
      return &Commands[82];      // "if"
    case 'l':    // 1 string to match.
      if (Name[1] != 'i')
        break;
      return &Commands[96];      // "li"
    case 's':    // 1 string to match.
      if (Name[1] != 'a')
        break;
      return &Commands[152];     // "sa"
    }
    break;
  case 3:        // 11 strings to match.
    switch (Name[0]) {
    default: break;
    case 'a':    // 1 string to match.
      if (memcmp(Name.data()+1, "rg", 2) != 0)
        break;
      return &Commands[5];       // "arg"
    case 'b':    // 1 string to match.
      if (memcmp(Name.data()+1, "ug", 2) != 0)
        break;
      return &Commands[11];      // "bug"
    case 'd':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'e':  // 1 string to match.
        if (Name[2] != 'f')
          break;
        return &Commands[32];    // "def"
      case 'i':  // 1 string to match.
        if (Name[2] != 'r')
          break;
        return &Commands[38];    // "dir"
      case 'o':  // 1 string to match.
        if (Name[2] != 't')
          break;
        return &Commands[44];    // "dot"
      }
      break;
    case 'm':    // 1 string to match.
      if (memcmp(Name.data()+1, "sc", 2) != 0)
        break;
      return &Commands[107];     // "msc"
    case 'p':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 1 string to match.
        if (Name[2] != 'r')
          break;
        return &Commands[120];   // "par"
      case 'r':  // 1 string to match.
        if (Name[2] != 'e')
          break;
        return &Commands[127];   // "pre"
      }
      break;
    case 'r':    // 1 string to match.
      if (memcmp(Name.data()+1, "ef", 2) != 0)
        break;
      return &Commands[137];     // "ref"
    case 's':    // 1 string to match.
      if (memcmp(Name.data()+1, "ee", 2) != 0)
        break;
      return &Commands[157];     // "see"
    case 'v':    // 1 string to match.
      if (memcmp(Name.data()+1, "ar", 2) != 0)
        break;
      return &Commands[188];     // "var"
    }
    break;
  case 4:        // 18 strings to match.
    switch (Name[0]) {
    default: break;
    case 'c':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'i':  // 1 string to match.
        if (memcmp(Name.data()+2, "te", 2) != 0)
          break;
        return &Commands[17];    // "cite"
      case 'o':  // 2 strings to match.
        switch (Name[2]) {
        default: break;
        case 'd':        // 1 string to match.
          if (Name[3] != 'e')
            break;
          return &Commands[21];  // "code"
        case 'n':        // 1 string to match.
          if (Name[3] != 'd')
            break;
          return &Commands[24];  // "cond"
        }
        break;
      }
      break;
    case 'd':    // 1 string to match.
      if (memcmp(Name.data()+1, "ate", 3) != 0)
        break;
      return &Commands[31];      // "date"
    case 'e':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'l':  // 1 string to match.
        if (memcmp(Name.data()+2, "se", 2) != 0)
          break;
        return &Commands[48];    // "else"
      case 'n':  // 1 string to match.
        if (memcmp(Name.data()+2, "um", 2) != 0)
          break;
        return &Commands[54];    // "enum"
      }
      break;
    case 'f':    // 1 string to match.
      if (memcmp(Name.data()+1, "ile", 3) != 0)
        break;
      return &Commands[65];      // "file"
    case 'l':    // 2 strings to match.
      if (memcmp(Name.data()+1, "in", 2) != 0)
        break;
      switch (Name[3]) {
      default: break;
      case 'e':  // 1 string to match.
        return &Commands[97];    // "line"
      case 'k':  // 1 string to match.
        return &Commands[98];    // "link"
      }
      break;
    case 'n':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 1 string to match.
        if (memcmp(Name.data()+2, "me", 2) != 0)
          break;
        return &Commands[111];   // "name"
      case 'o':  // 2 strings to match.
        switch (Name[2]) {
        default: break;
        case 'o':        // 1 string to match.
          if (Name[3] != 'p')
            break;
          return &Commands[113];         // "noop"
        case 't':        // 1 string to match.
          if (Name[3] != 'e')
            break;
          return &Commands[115];         // "note"
        }
        break;
      }
      break;
    case 'p':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 1 string to match.
        if (memcmp(Name.data()+2, "ge", 2) != 0)
          break;
        return &Commands[119];   // "page"
      case 'o':  // 1 string to match.
        if (memcmp(Name.data()+2, "st", 2) != 0)
          break;
        return &Commands[126];   // "post"
      case 'u':  // 1 string to match.
        if (memcmp(Name.data()+2, "re", 2) != 0)
          break;
        return &Commands[136];   // "pure"
      }
      break;
    case 's':    // 1 string to match.
      if (memcmp(Name.data()+1, "kip", 3) != 0)
        break;
      return &Commands[164];     // "skip"
    case 't':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'e':  // 1 string to match.
        if (memcmp(Name.data()+2, "st", 2) != 0)
          break;
        return &Commands[176];   // "test"
      case 'o':  // 1 string to match.
        if (memcmp(Name.data()+2, "do", 2) != 0)
          break;
        return &Commands[181];   // "todo"
      }
      break;
    }
    break;
  case 5:        // 15 strings to match.
    switch (Name[0]) {
    default: break;
    case '/':    // 1 string to match.
      if (memcmp(Name.data()+1, "link", 4) != 0)
        break;
      return &Commands[99];      // "/link"
    case 'b':    // 1 string to match.
      if (memcmp(Name.data()+1, "rief", 4) != 0)
        break;
      return &Commands[10];      // "brief"
    case 'c':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'l':  // 1 string to match.
        if (memcmp(Name.data()+2, "ass", 3) != 0)
          break;
        return &Commands[18];    // "class"
      case 'o':  // 1 string to match.
        if (memcmp(Name.data()+2, "nst", 3) != 0)
          break;
        return &Commands[25];    // "const"
      }
      break;
    case 'e':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'm':  // 1 string to match.
        if (memcmp(Name.data()+2, "oji", 3) != 0)
          break;
        return &Commands[51];    // "emoji"
      case 'n':  // 1 string to match.
        if (memcmp(Name.data()+2, "dif", 3) != 0)
          break;
        return &Commands[53];    // "endif"
      }
      break;
    case 'h':    // 1 string to match.
      if (memcmp(Name.data()+1, "elps", 4) != 0)
        break;
      return &Commands[72];      // "helps"
    case 'i':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'f':  // 1 string to match.
        if (memcmp(Name.data()+2, "not", 3) != 0)
          break;
        return &Commands[83];    // "ifnot"
      case 'm':  // 1 string to match.
        if (memcmp(Name.data()+2, "age", 3) != 0)
          break;
        return &Commands[84];    // "image"
      }
      break;
    case 'p':    // 1 string to match.
      if (memcmp(Name.data()+1, "aram", 4) != 0)
        break;
      return &Commands[124];     // "param"
    case 's':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'h':  // 1 string to match.
        if (memcmp(Name.data()+2, "ort", 3) != 0)
          break;
        return &Commands[159];   // "short"
      case 'i':  // 1 string to match.
        if (memcmp(Name.data()+2, "nce", 3) != 0)
          break;
        return &Commands[163];   // "since"
      }
      break;
    case 't':    // 1 string to match.
      if (memcmp(Name.data()+1, "hrow", 4) != 0)
        break;
      return &Commands[179];     // "throw"
    case 'u':    // 2 strings to match.
      if (Name[1] != 'n')
        break;
      switch (Name[2]) {
      default: break;
      case 'i':  // 1 string to match.
        if (memcmp(Name.data()+3, "on", 2) != 0)
          break;
        return &Commands[186];   // "union"
      case 't':  // 1 string to match.
        if (memcmp(Name.data()+3, "il", 2) != 0)
          break;
        return &Commands[187];   // "until"
      }
      break;
    }
    break;
  case 6:        // 17 strings to match.
    switch (Name[0]) {
    default: break;
    case 'a':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'n':  // 1 string to match.
        if (memcmp(Name.data()+2, "chor", 4) != 0)
          break;
        return &Commands[4];     // "anchor"
      case 'u':  // 1 string to match.
        if (memcmp(Name.data()+2, "thor", 4) != 0)
          break;
        return &Commands[7];     // "author"
      }
      break;
    case 'e':    // 4 strings to match.
      switch (Name[1]) {
      default: break;
      case 'l':  // 1 string to match.
        if (memcmp(Name.data()+2, "seif", 4) != 0)
          break;
        return &Commands[49];    // "elseif"
      case 'n':  // 3 strings to match.
        if (Name[2] != 'd')
          break;
        switch (Name[3]) {
        default: break;
        case 'd':        // 1 string to match.
          if (memcmp(Name.data()+4, "ot", 2) != 0)
            break;
          return &Commands[45];  // "enddot"
        case 'm':        // 1 string to match.
          if (memcmp(Name.data()+4, "sc", 2) != 0)
            break;
          return &Commands[108];         // "endmsc"
        case 'u':        // 1 string to match.
          if (memcmp(Name.data()+4, "ml", 2) != 0)
            break;
          return &Commands[185];         // "enduml"
        }
        break;
      }
      break;
    case 'h':    // 1 string to match.
      if (memcmp(Name.data()+1, "elper", 5) != 0)
        break;
      return &Commands[70];      // "helper"
    case 'm':    // 1 string to match.
      if (memcmp(Name.data()+1, "ethod", 5) != 0)
        break;
      return &Commands[105];     // "method"
    case 'p':    // 1 string to match.
      if (memcmp(Name.data()+1, "ublic", 5) != 0)
        break;
      return &Commands[134];     // "public"
    case 'r':    // 4 strings to match.
      if (Name[1] != 'e')
        break;
      switch (Name[2]) {
      default: break;
      case 'm':  // 1 string to match.
        if (memcmp(Name.data()+3, "ark", 3) != 0)
          break;
        return &Commands[143];   // "remark"
      case 's':  // 1 string to match.
        if (memcmp(Name.data()+3, "ult", 3) != 0)
          break;
        return &Commands[145];   // "result"
      case 't':  // 2 strings to match.
        switch (Name[3]) {
        default: break;
        case 'u':        // 1 string to match.
          if (memcmp(Name.data()+4, "rn", 2) != 0)
            break;
          return &Commands[146];         // "return"
        case 'v':        // 1 string to match.
          if (memcmp(Name.data()+4, "al", 2) != 0)
            break;
          return &Commands[148];         // "retval"
        }
        break;
      }
      break;
    case 's':    // 2 strings to match.
      if (Name[1] != 't')
        break;
      switch (Name[2]) {
      default: break;
      case 'a':  // 1 string to match.
        if (memcmp(Name.data()+3, "tic", 3) != 0)
          break;
        return &Commands[167];   // "static"
      case 'r':  // 1 string to match.
        if (memcmp(Name.data()+3, "uct", 3) != 0)
          break;
        return &Commands[168];   // "struct"
      }
      break;
    case 't':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'h':  // 1 string to match.
        if (memcmp(Name.data()+2, "rows", 4) != 0)
          break;
        return &Commands[180];   // "throws"
      case 'p':  // 1 string to match.
        if (memcmp(Name.data()+2, "aram", 4) != 0)
          break;
        return &Commands[182];   // "tparam"
      }
      break;
    }
    break;
  case 7:        // 30 strings to match.
    switch (Name[0]) {
    default: break;
    case 'a':    // 1 string to match.
      if (memcmp(Name.data()+1, "uthors", 6) != 0)
        break;
      return &Commands[8];       // "authors"
    case 'c':    // 3 strings to match.
      if (Name[1] != 'o')
        break;
      switch (Name[2]) {
      default: break;
      case 'c':  // 1 string to match.
        if (memcmp(Name.data()+3, "lass", 4) != 0)
          break;
        return &Commands[20];    // "coclass"
      case 'n':  // 1 string to match.
        if (memcmp(Name.data()+3, "cept", 4) != 0)
          break;
        return &Commands[23];    // "concept"
      case 'p':  // 1 string to match.
        if (memcmp(Name.data()+3, "ydoc", 4) != 0)
          break;
        return &Commands[29];    // "copydoc"
      }
      break;
    case 'd':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'e':  // 1 string to match.
        if (memcmp(Name.data()+2, "tails", 5) != 0)
          break;
        return &Commands[36];    // "details"
      case 'i':  // 1 string to match.
        if (memcmp(Name.data()+2, "afile", 5) != 0)
          break;
        return &Commands[37];    // "diafile"
      case 'o':  // 1 string to match.
        if (memcmp(Name.data()+2, "tfile", 5) != 0)
          break;
        return &Commands[46];    // "dotfile"
      }
      break;
    case 'e':    // 4 strings to match.
      switch (Name[1]) {
      default: break;
      case 'n':  // 2 strings to match.
        if (memcmp(Name.data()+2, "dco", 3) != 0)
          break;
        switch (Name[5]) {
        default: break;
        case 'd':        // 1 string to match.
          if (Name[6] != 'e')
            break;
          return &Commands[22];  // "endcode"
        case 'n':        // 1 string to match.
          if (Name[6] != 'd')
            break;
          return &Commands[52];  // "endcond"
        }
        break;
      case 'x':  // 2 strings to match.
        switch (Name[2]) {
        default: break;
        case 'a':        // 1 string to match.
          if (memcmp(Name.data()+3, "mple", 4) != 0)
            break;
          return &Commands[55];  // "example"
        case 't':        // 1 string to match.
          if (memcmp(Name.data()+3, "ends", 4) != 0)
            break;
          return &Commands[57];  // "extends"
        }
        break;
      }
      break;
    case 'i':    // 2 strings to match.
      if (Name[1] != 'n')
        break;
      switch (Name[2]) {
      default: break;
      case 'c':  // 1 string to match.
        if (memcmp(Name.data()+3, "lude", 4) != 0)
          break;
        return &Commands[86];    // "include"
      case 'g':  // 1 string to match.
        if (memcmp(Name.data()+3, "roup", 4) != 0)
          break;
        return &Commands[87];    // "ingroup"
      }
      break;
    case 'm':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 1 string to match.
        if (memcmp(Name.data()+2, "nonly", 5) != 0)
          break;
        return &Commands[102];   // "manonly"
      case 's':  // 1 string to match.
        if (memcmp(Name.data()+2, "cfile", 5) != 0)
          break;
        return &Commands[109];   // "mscfile"
      }
      break;
    case 'p':    // 1 string to match.
      if (memcmp(Name.data()+1, "rivate", 6) != 0)
        break;
      return &Commands[128];     // "private"
    case 'r':    // 6 strings to match.
      switch (Name[1]) {
      default: break;
      case 'e':  // 5 strings to match.
        switch (Name[2]) {
        default: break;
        case 'f':        // 1 string to match.
          if (memcmp(Name.data()+3, "item", 4) != 0)
            break;
          return &Commands[138];         // "refitem"
        case 'l':        // 2 strings to match.
          if (memcmp(Name.data()+3, "ate", 3) != 0)
            break;
          switch (Name[6]) {
          default: break;
          case 'd':      // 1 string to match.
            return &Commands[139];       // "related"
          case 's':      // 1 string to match.
            return &Commands[141];       // "relates"
          }
          break;
        case 'm':        // 1 string to match.
          if (memcmp(Name.data()+3, "arks", 4) != 0)
            break;
          return &Commands[144];         // "remarks"
        case 't':        // 1 string to match.
          if (memcmp(Name.data()+3, "urns", 4) != 0)
            break;
          return &Commands[147];         // "returns"
        }
        break;
      case 't':  // 1 string to match.
        if (memcmp(Name.data()+2, "fonly", 5) != 0)
          break;
        return &Commands[150];   // "rtfonly"
      }
      break;
    case 's':    // 4 strings to match.
      switch (Name[1]) {
      default: break;
      case 'e':  // 2 strings to match.
        switch (Name[2]) {
        default: break;
        case 'c':        // 1 string to match.
          if (memcmp(Name.data()+3, "tion", 4) != 0)
            break;
          return &Commands[155];         // "section"
        case 'e':        // 1 string to match.
          if (memcmp(Name.data()+3, "also", 4) != 0)
            break;
          return &Commands[158];         // "seealso"
        }
        break;
      case 'n':  // 1 string to match.
        if (memcmp(Name.data()+2, "ippet", 5) != 0)
          break;
        return &Commands[166];   // "snippet"
      case 'u':  // 1 string to match.
        if (memcmp(Name.data()+2, "bpage", 5) != 0)
          break;
        return &Commands[169];   // "subpage"
      }
      break;
    case 't':    // 1 string to match.
      if (memcmp(Name.data()+1, "ypedef", 6) != 0)
        break;
      return &Commands[183];     // "typedef"
    case 'v':    // 1 string to match.
      if (memcmp(Name.data()+1, "ersion", 6) != 0)
        break;
      return &Commands[192];     // "version"
    case 'w':    // 1 string to match.
      if (memcmp(Name.data()+1, "arning", 6) != 0)
        break;
      return &Commands[193];     // "warning"
    case 'x':    // 1 string to match.
      if (memcmp(Name.data()+1, "mlonly", 6) != 0)
        break;
      return &Commands[197];     // "xmlonly"
    }
    break;
  case 8:        // 23 strings to match.
    switch (Name[0]) {
    default: break;
    case 'a':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'b':  // 1 string to match.
        if (memcmp(Name.data()+2, "stract", 6) != 0)
          break;
        return &Commands[1];     // "abstract"
      case 'd':  // 1 string to match.
        if (memcmp(Name.data()+2, "dindex", 6) != 0)
          break;
        return &Commands[2];     // "addindex"
      }
      break;
    case 'c':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 2 strings to match.
        switch (Name[2]) {
        default: break;
        case 'l':        // 1 string to match.
          if (memcmp(Name.data()+3, "lback", 5) != 0)
            break;
          return &Commands[14];  // "callback"
        case 't':        // 1 string to match.
          if (memcmp(Name.data()+3, "egory", 5) != 0)
            break;
          return &Commands[16];  // "category"
        }
        break;
      case 'o':  // 1 string to match.
        if (memcmp(Name.data()+2, "nstant", 6) != 0)
          break;
        return &Commands[26];    // "constant"
      }
      break;
    case 'd':    // 1 string to match.
      if (memcmp(Name.data()+1, "efgroup", 7) != 0)
        break;
      return &Commands[33];      // "defgroup"
    case 'f':    // 1 string to match.
      if (memcmp(Name.data()+1, "unction", 7) != 0)
        break;
      return &Commands[67];      // "function"
    case 'h':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'i':  // 1 string to match.
        if (memcmp(Name.data()+2, "derefs", 6) != 0)
          break;
        return &Commands[77];    // "hiderefs"
      case 't':  // 1 string to match.
        if (memcmp(Name.data()+2, "mlonly", 6) != 0)
          break;
        return &Commands[79];    // "htmlonly"
      }
      break;
    case 'i':    // 1 string to match.
      if (memcmp(Name.data()+1, "nternal", 7) != 0)
        break;
      return &Commands[90];      // "internal"
    case 'm':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 1 string to match.
        if (memcmp(Name.data()+2, "inpage", 6) != 0)
          break;
        return &Commands[100];   // "mainpage"
      case 'e':  // 1 string to match.
        if (memcmp(Name.data()+2, "mberof", 6) != 0)
          break;
        return &Commands[104];   // "memberof"
      }
      break;
    case 'o':    // 1 string to match.
      if (memcmp(Name.data()+1, "verload", 7) != 0)
        break;
      return &Commands[116];     // "overload"
    case 'p':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 1 string to match.
        if (memcmp(Name.data()+2, "rblock", 6) != 0)
          break;
        return &Commands[121];   // "parblock"
      case 'r':  // 2 strings to match.
        if (Name[2] != 'o')
          break;
        switch (Name[3]) {
        default: break;
        case 'p':        // 1 string to match.
          if (memcmp(Name.data()+4, "erty", 4) != 0)
            break;
          return &Commands[130];         // "property"
        case 't':        // 1 string to match.
          if (memcmp(Name.data()+4, "ocol", 4) != 0)
            break;
          return &Commands[133];         // "protocol"
        }
        break;
      }
      break;
    case 's':    // 4 strings to match.
      switch (Name[1]) {
      default: break;
      case 'e':  // 1 string to match.
        if (memcmp(Name.data()+2, "curity", 6) != 0)
          break;
        return &Commands[156];   // "security"
      case 'h':  // 1 string to match.
        if (memcmp(Name.data()+2, "owrefs", 6) != 0)
          break;
        return &Commands[162];   // "showrefs"
      case 'k':  // 1 string to match.
        if (memcmp(Name.data()+2, "ipline", 6) != 0)
          break;
        return &Commands[165];   // "skipline"
      case 't':  // 1 string to match.
        if (memcmp(Name.data()+2, "artuml", 6) != 0)
          break;
        return &Commands[184];   // "startuml"
      }
      break;
    case 't':    // 1 string to match.
      if (memcmp(Name.data()+1, "emplate", 7) != 0)
        break;
      return &Commands[174];     // "template"
    case 'v':    // 1 string to match.
      if (memcmp(Name.data()+1, "erbatim", 7) != 0)
        break;
      return &Commands[190];     // "verbatim"
    case 'x':    // 1 string to match.
      if (memcmp(Name.data()+1, "refitem", 7) != 0)
        break;
      return &Commands[195];     // "xrefitem"
    }
    break;
  case 9:        // 17 strings to match.
    switch (Name[0]) {
    default: break;
    case 'a':    // 1 string to match.
      if (memcmp(Name.data()+1, "ttention", 8) != 0)
        break;
      return &Commands[6];       // "attention"
    case 'c':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 1 string to match.
        if (memcmp(Name.data()+2, "llgraph", 7) != 0)
          break;
        return &Commands[13];    // "callgraph"
      case 'o':  // 2 strings to match.
        if (memcmp(Name.data()+2, "py", 2) != 0)
          break;
        switch (Name[4]) {
        default: break;
        case 'b':        // 1 string to match.
          if (memcmp(Name.data()+5, "rief", 4) != 0)
            break;
          return &Commands[27];  // "copybrief"
        case 'r':        // 1 string to match.
          if (memcmp(Name.data()+5, "ight", 4) != 0)
            break;
          return &Commands[30];  // "copyright"
        }
        break;
      }
      break;
    case 'e':    // 1 string to match.
      if (memcmp(Name.data()+1, "xception", 8) != 0)
        break;
      return &Commands[56];      // "exception"
    case 'h':    // 1 string to match.
      if (memcmp(Name.data()+1, "iderefby", 8) != 0)
        break;
      return &Commands[76];      // "hiderefby"
    case 'i':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'd':  // 1 string to match.
        if (memcmp(Name.data()+2, "lexcept", 7) != 0)
          break;
        return &Commands[81];    // "idlexcept"
      case 'n':  // 2 strings to match.
        switch (Name[2]) {
        default: break;
        case 't':        // 1 string to match.
          if (memcmp(Name.data()+3, "erface", 6) != 0)
            break;
          return &Commands[89];  // "interface"
        case 'v':        // 1 string to match.
          if (memcmp(Name.data()+3, "ariant", 6) != 0)
            break;
          return &Commands[92];  // "invariant"
        }
        break;
      }
      break;
    case 'l':    // 1 string to match.
      if (memcmp(Name.data()+1, "atexonly", 8) != 0)
        break;
      return &Commands[94];      // "latexonly"
    case 'n':    // 1 string to match.
      if (memcmp(Name.data()+1, "amespace", 8) != 0)
        break;
      return &Commands[112];     // "namespace"
    case 'o':    // 1 string to match.
      if (memcmp(Name.data()+1, "wnership", 8) != 0)
        break;
      return &Commands[117];     // "ownership"
    case 'p':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 1 string to match.
        if (memcmp(Name.data()+2, "ragraph", 7) != 0)
          break;
        return &Commands[123];   // "paragraph"
      case 'r':  // 1 string to match.
        if (memcmp(Name.data()+2, "otected", 7) != 0)
          break;
        return &Commands[131];   // "protected"
      }
      break;
    case 's':    // 1 string to match.
      if (memcmp(Name.data()+1, "howrefby", 8) != 0)
        break;
      return &Commands[161];     // "showrefby"
    case 't':    // 1 string to match.
      if (memcmp(Name.data()+1, "extblock", 8) != 0)
        break;
      return &Commands[177];     // "textblock"
    case 'w':    // 1 string to match.
      if (memcmp(Name.data()+1, "eakgroup", 8) != 0)
        break;
      return &Commands[194];     // "weakgroup"
    }
    break;
  case 10:       // 16 strings to match.
    switch (Name[0]) {
    default: break;
    case '/':    // 1 string to match.
      if (memcmp(Name.data()+1, "textblock", 9) != 0)
        break;
      return &Commands[178];     // "/textblock"
    case 'a':    // 1 string to match.
      if (memcmp(Name.data()+1, "ddtogroup", 9) != 0)
        break;
      return &Commands[3];       // "addtogroup"
    case 'd':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'e':  // 2 strings to match.
        if (Name[2] != 'p')
          break;
        switch (Name[3]) {
        default: break;
        case 'e':        // 1 string to match.
          if (memcmp(Name.data()+4, "ndency", 6) != 0)
            break;
          return &Commands[34];  // "dependency"
        case 'r':        // 1 string to match.
          if (memcmp(Name.data()+4, "ecated", 6) != 0)
            break;
          return &Commands[35];  // "deprecated"
        }
        break;
      case 'i':  // 1 string to match.
        if (memcmp(Name.data()+2, "scussion", 8) != 0)
          break;
        return &Commands[39];    // "discussion"
      }
      break;
    case 'e':    // 3 strings to match.
      if (memcmp(Name.data()+1, "nd", 2) != 0)
        break;
      switch (Name[3]) {
      default: break;
      case 'm':  // 1 string to match.
        if (memcmp(Name.data()+4, "anonly", 6) != 0)
          break;
        return &Commands[103];   // "endmanonly"
      case 'r':  // 1 string to match.
        if (memcmp(Name.data()+4, "tfonly", 6) != 0)
          break;
        return &Commands[151];   // "endrtfonly"
      case 'x':  // 1 string to match.
        if (memcmp(Name.data()+4, "mlonly", 6) != 0)
          break;
        return &Commands[198];   // "endxmlonly"
      }
      break;
    case 'h':    // 1 string to match.
      if (memcmp(Name.data()+1, "eaderfile", 9) != 0)
        break;
      return &Commands[69];      // "headerfile"
    case 'i':    // 1 string to match.
      if (memcmp(Name.data()+1, "mplements", 9) != 0)
        break;
      return &Commands[85];      // "implements"
    case 'm':    // 1 string to match.
      if (memcmp(Name.data()+1, "aninclude", 9) != 0)
        break;
      return &Commands[101];     // "maninclude"
    case 'r':    // 1 string to match.
      if (memcmp(Name.data()+1, "tfinclude", 9) != 0)
        break;
      return &Commands[149];     // "rtfinclude"
    case 's':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'e':  // 1 string to match.
        if (memcmp(Name.data()+2, "creflist", 8) != 0)
          break;
        return &Commands[153];   // "secreflist"
      case 'u':  // 2 strings to match.
        switch (Name[2]) {
        default: break;
        case 'b':        // 1 string to match.
          if (memcmp(Name.data()+3, "section", 7) != 0)
            break;
          return &Commands[170];         // "subsection"
        case 'p':        // 1 string to match.
          if (memcmp(Name.data()+3, "erclass", 7) != 0)
            break;
          return &Commands[172];         // "superclass"
        }
        break;
      }
      break;
    case 'x':    // 1 string to match.
      if (memcmp(Name.data()+1, "mlinclude", 9) != 0)
        break;
      return &Commands[196];     // "xmlinclude"
    }
    break;
  case 11:       // 16 strings to match.
    switch (Name[0]) {
    default: break;
    case 'c':    // 3 strings to match.
      switch (Name[1]) {
      default: break;
      case 'a':  // 1 string to match.
        if (memcmp(Name.data()+2, "llergraph", 9) != 0)
          break;
        return &Commands[15];    // "callergraph"
      case 'l':  // 1 string to match.
        if (memcmp(Name.data()+2, "assdesign", 9) != 0)
          break;
        return &Commands[19];    // "classdesign"
      case 'o':  // 1 string to match.
        if (memcmp(Name.data()+2, "pydetails", 9) != 0)
          break;
        return &Commands[28];    // "copydetails"
      }
      break;
    case 'd':    // 2 strings to match.
      if (Name[1] != 'o')
        break;
      switch (Name[2]) {
      default: break;
      case 'c':  // 1 string to match.
        if (memcmp(Name.data()+3, "bookonly", 8) != 0)
          break;
        return &Commands[41];    // "docbookonly"
      case 'n':  // 1 string to match.
        if (memcmp(Name.data()+3, "tinclude", 8) != 0)
          break;
        return &Commands[43];    // "dontinclude"
      }
      break;
    case 'e':    // 4 strings to match.
      if (memcmp(Name.data()+1, "nd", 2) != 0)
        break;
      switch (Name[3]) {
      default: break;
      case 'h':  // 1 string to match.
        if (memcmp(Name.data()+4, "tmlonly", 7) != 0)
          break;
        return &Commands[80];    // "endhtmlonly"
      case 'i':  // 1 string to match.
        if (memcmp(Name.data()+4, "nternal", 7) != 0)
          break;
        return &Commands[91];    // "endinternal"
      case 'p':  // 1 string to match.
        if (memcmp(Name.data()+4, "arblock", 7) != 0)
          break;
        return &Commands[122];   // "endparblock"
      case 'v':  // 1 string to match.
        if (memcmp(Name.data()+4, "erbatim", 7) != 0)
          break;
        return &Commands[191];   // "endverbatim"
      }
      break;
    case 'h':    // 2 strings to match.
      switch (Name[1]) {
      default: break;
      case 'e':  // 1 string to match.
        if (memcmp(Name.data()+2, "lperclass", 9) != 0)
          break;
        return &Commands[71];    // "helperclass"
      case 't':  // 1 string to match.
        if (memcmp(Name.data()+2, "mlinclude", 9) != 0)
          break;
        return &Commands[78];    // "htmlinclude"
      }
      break;
    case 'm':    // 1 string to match.
      if (memcmp(Name.data()+1, "ethodgroup", 10) != 0)
        break;
      return &Commands[106];     // "methodgroup"
    case 'p':    // 1 string to match.
      if (memcmp(Name.data()+1, "erformance", 10) != 0)
        break;
      return &Commands[125];     // "performance"
    case 'r':    // 2 strings to match.
      if (memcmp(Name.data()+1, "elate", 5) != 0)
        break;
      switch (Name[6]) {
      default: break;
      case 'd':  // 1 string to match.
        if (memcmp(Name.data()+7, "also", 4) != 0)
          break;
        return &Commands[140];   // "relatedalso"
      case 's':  // 1 string to match.
        if (memcmp(Name.data()+7, "also", 4) != 0)
          break;
        return &Commands[142];   // "relatesalso"
      }
      break;
    case 'v':    // 1 string to match.
      if (memcmp(Name.data()+1, "erbinclude", 10) != 0)
        break;
      return &Commands[189];     // "verbinclude"
    }
    break;
  case 12:       // 3 strings to match.
    switch (Name[0]) {
    default: break;
    case 'e':    // 1 string to match.
      if (memcmp(Name.data()+1, "ndlatexonly", 11) != 0)
        break;
      return &Commands[95];      // "endlatexonly"
    case 'i':    // 1 string to match.
      if (memcmp(Name.data()+1, "nstancesize", 11) != 0)
        break;
      return &Commands[88];      // "instancesize"
    case 'l':    // 1 string to match.
      if (memcmp(Name.data()+1, "atexinclude", 11) != 0)
        break;
      return &Commands[93];      // "latexinclude"
    }
    break;
  case 13:       // 7 strings to match.
    switch (Name[0]) {
    default: break;
    case 'e':    // 1 string to match.
      if (memcmp(Name.data()+1, "ndsecreflist", 12) != 0)
        break;
      return &Commands[154];     // "endsecreflist"
    case 'f':    // 1 string to match.
      if (memcmp(Name.data()+1, "unctiongroup", 12) != 0)
        break;
      return &Commands[68];      // "functiongroup"
    case 'h':    // 1 string to match.
      if (memcmp(Name.data()+1, "idecallgraph", 12) != 0)
        break;
      return &Commands[73];      // "hidecallgraph"
    case 'n':    // 1 string to match.
      if (memcmp(Name.data()+1, "osubgrouping", 12) != 0)
        break;
      return &Commands[114];     // "nosubgrouping"
    case 'p':    // 1 string to match.
      if (memcmp(Name.data()+1, "ublicsection", 12) != 0)
        break;
      return &Commands[135];     // "publicsection"
    case 's':    // 1 string to match.
      if (memcmp(Name.data()+1, "ubsubsection", 12) != 0)
        break;
      return &Commands[171];     // "subsubsection"
    case 't':    // 1 string to match.
      if (memcmp(Name.data()+1, "emplatefield", 12) != 0)
        break;
      return &Commands[175];     // "templatefield"
    }
    break;
  case 14:       // 3 strings to match.
    switch (Name[0]) {
    default: break;
    case 'd':    // 1 string to match.
      if (memcmp(Name.data()+1, "ocbookinclude", 13) != 0)
        break;
      return &Commands[40];      // "docbookinclude"
    case 'e':    // 1 string to match.
      if (memcmp(Name.data()+1, "nddocbookonly", 13) != 0)
        break;
      return &Commands[42];      // "enddocbookonly"
    case 'p':    // 1 string to match.
      if (memcmp(Name.data()+1, "rivatesection", 13) != 0)
        break;
      return &Commands[129];     // "privatesection"
    }
    break;
  case 15:       // 4 strings to match.
    switch (Name[0]) {
    default: break;
    case 'h':    // 2 strings to match.
      if (memcmp(Name.data()+1, "ide", 3) != 0)
        break;
      switch (Name[4]) {
      default: break;
      case 'c':  // 1 string to match.
        if (memcmp(Name.data()+5, "allergraph", 10) != 0)
          break;
        return &Commands[74];    // "hidecallergraph"
      case 'i':  // 1 string to match.
        if (memcmp(Name.data()+5, "nitializer", 10) != 0)
          break;
        return &Commands[75];    // "hideinitializer"
      }
      break;
    case 's':    // 1 string to match.
      if (memcmp(Name.data()+1, "howinitializer", 14) != 0)
        break;
      return &Commands[160];     // "showinitializer"
    case 't':    // 1 string to match.
      if (memcmp(Name.data()+1, "ableofcontents", 14) != 0)
        break;
      return &Commands[173];     // "tableofcontents"
    }
    break;
  case 16:       // 1 string to match.
    if (memcmp(Name.data()+0, "protectedsection", 16) != 0)
      break;
    return &Commands[132];       // "protectedsection"
  }
  return nullptr;
}