Warning, /include/clang/AST/CommentHTMLNamedCharacterReferences.inc is written in an unsupported language. File is not indexed.
0001 /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
0002 |* *|
0003 |* HTML named character reference to UTF-8 translation *|
0004 |* *|
0005 |* Automatically generated file, do not edit! *|
0006 |* From: CommentHTMLNamedCharacterReferences.td *|
0007 |* *|
0008 \*===----------------------------------------------------------------------===*/
0009
0010 StringRef translateHTMLNamedCharacterReferenceToUTF8(
0011 StringRef Name) {
0012 switch (Name.size()) {
0013 default: break;
0014 case 2: // 15 strings to match.
0015 switch (Name[0]) {
0016 default: break;
0017 case 'G': // 2 strings to match.
0018 switch (Name[1]) {
0019 default: break;
0020 case 'T': // 1 string to match.
0021 return "\x3e"; // "GT"
0022 case 't': // 1 string to match.
0023 return "\x3e"; // "Gt"
0024 }
0025 break;
0026 case 'L': // 2 strings to match.
0027 switch (Name[1]) {
0028 default: break;
0029 case 'T': // 1 string to match.
0030 return "\x3c"; // "LT"
0031 case 't': // 1 string to match.
0032 return "\x3c"; // "Lt"
0033 }
0034 break;
0035 case 'P': // 1 string to match.
0036 if (Name[1] != 'i')
0037 break;
0038 return "\xce\xa0"; // "Pi"
0039 case 'X': // 1 string to match.
0040 if (Name[1] != 'i')
0041 break;
0042 return "\xce\x9e"; // "Xi"
0043 case 'g': // 2 strings to match.
0044 switch (Name[1]) {
0045 default: break;
0046 case 'e': // 1 string to match.
0047 return "\xe2\x89\xa5"; // "ge"
0048 case 't': // 1 string to match.
0049 return "\x3e"; // "gt"
0050 }
0051 break;
0052 case 'l': // 2 strings to match.
0053 switch (Name[1]) {
0054 default: break;
0055 case 'e': // 1 string to match.
0056 return "\xe2\x89\xa4"; // "le"
0057 case 't': // 1 string to match.
0058 return "\x3c"; // "lt"
0059 }
0060 break;
0061 case 'm': // 1 string to match.
0062 if (Name[1] != 'u')
0063 break;
0064 return "\xce\xbc"; // "mu"
0065 case 'n': // 2 strings to match.
0066 switch (Name[1]) {
0067 default: break;
0068 case 'e': // 1 string to match.
0069 return "\xe2\x89\xa0"; // "ne"
0070 case 'u': // 1 string to match.
0071 return "\xce\xbd"; // "nu"
0072 }
0073 break;
0074 case 'p': // 1 string to match.
0075 if (Name[1] != 'i')
0076 break;
0077 return "\xcf\x80"; // "pi"
0078 case 'x': // 1 string to match.
0079 if (Name[1] != 'i')
0080 break;
0081 return "\xce\xbe"; // "xi"
0082 }
0083 break;
0084 case 3: // 16 strings to match.
0085 switch (Name[0]) {
0086 default: break;
0087 case 'A': // 1 string to match.
0088 if (memcmp(Name.data()+1, "MP", 2) != 0)
0089 break;
0090 return "\x26"; // "AMP"
0091 case 'P': // 2 strings to match.
0092 switch (Name[1]) {
0093 default: break;
0094 case 'h': // 1 string to match.
0095 if (Name[2] != 'i')
0096 break;
0097 return "\xce\xa6"; // "Phi"
0098 case 's': // 1 string to match.
0099 if (Name[2] != 'i')
0100 break;
0101 return "\xce\xa8"; // "Psi"
0102 }
0103 break;
0104 case 'R': // 1 string to match.
0105 if (memcmp(Name.data()+1, "EG", 2) != 0)
0106 break;
0107 return "\xc2\xae"; // "REG"
0108 case 'a': // 1 string to match.
0109 if (memcmp(Name.data()+1, "mp", 2) != 0)
0110 break;
0111 return "\x26"; // "amp"
0112 case 'c': // 1 string to match.
0113 if (memcmp(Name.data()+1, "hi", 2) != 0)
0114 break;
0115 return "\xcf\x87"; // "chi"
0116 case 'd': // 1 string to match.
0117 if (memcmp(Name.data()+1, "eg", 2) != 0)
0118 break;
0119 return "\xc2\xb0"; // "deg"
0120 case 'e': // 1 string to match.
0121 if (memcmp(Name.data()+1, "ta", 2) != 0)
0122 break;
0123 return "\xce\xb7"; // "eta"
0124 case 'i': // 1 string to match.
0125 if (memcmp(Name.data()+1, "nt", 2) != 0)
0126 break;
0127 return "\xe2\x88\xab"; // "int"
0128 case 'p': // 2 strings to match.
0129 switch (Name[1]) {
0130 default: break;
0131 case 'h': // 1 string to match.
0132 if (Name[2] != 'i')
0133 break;
0134 return "\xcf\x86"; // "phi"
0135 case 's': // 1 string to match.
0136 if (Name[2] != 'i')
0137 break;
0138 return "\xcf\x88"; // "psi"
0139 }
0140 break;
0141 case 'r': // 2 strings to match.
0142 switch (Name[1]) {
0143 default: break;
0144 case 'e': // 1 string to match.
0145 if (Name[2] != 'g')
0146 break;
0147 return "\xc2\xae"; // "reg"
0148 case 'h': // 1 string to match.
0149 if (Name[2] != 'o')
0150 break;
0151 return "\xcf\x81"; // "rho"
0152 }
0153 break;
0154 case 's': // 2 strings to match.
0155 switch (Name[1]) {
0156 default: break;
0157 case 'i': // 1 string to match.
0158 if (Name[2] != 'm')
0159 break;
0160 return "\xe2\x88\xbc"; // "sim"
0161 case 'u': // 1 string to match.
0162 if (Name[2] != 'm')
0163 break;
0164 return "\xe2\x88\x91"; // "sum"
0165 }
0166 break;
0167 case 't': // 1 string to match.
0168 if (memcmp(Name.data()+1, "au", 2) != 0)
0169 break;
0170 return "\xcf\x84"; // "tau"
0171 }
0172 break;
0173 case 4: // 30 strings to match.
0174 switch (Name[0]) {
0175 default: break;
0176 case 'A': // 1 string to match.
0177 if (memcmp(Name.data()+1, "uml", 3) != 0)
0178 break;
0179 return "\xc3\x84"; // "Auml"
0180 case 'C': // 1 string to match.
0181 if (memcmp(Name.data()+1, "OPY", 3) != 0)
0182 break;
0183 return "\xc2\xa9"; // "COPY"
0184 case 'E': // 1 string to match.
0185 if (memcmp(Name.data()+1, "uml", 3) != 0)
0186 break;
0187 return "\xc3\x8b"; // "Euml"
0188 case 'I': // 1 string to match.
0189 if (memcmp(Name.data()+1, "uml", 3) != 0)
0190 break;
0191 return "\xc3\x8f"; // "Iuml"
0192 case 'O': // 1 string to match.
0193 if (memcmp(Name.data()+1, "uml", 3) != 0)
0194 break;
0195 return "\xc3\x96"; // "Ouml"
0196 case 'Q': // 1 string to match.
0197 if (memcmp(Name.data()+1, "UOT", 3) != 0)
0198 break;
0199 return "\x22"; // "QUOT"
0200 case 'U': // 1 string to match.
0201 if (memcmp(Name.data()+1, "uml", 3) != 0)
0202 break;
0203 return "\xc3\x9c"; // "Uuml"
0204 case 'Y': // 1 string to match.
0205 if (memcmp(Name.data()+1, "uml", 3) != 0)
0206 break;
0207 return "\xc5\xb8"; // "Yuml"
0208 case 'a': // 2 strings to match.
0209 switch (Name[1]) {
0210 default: break;
0211 case 'p': // 1 string to match.
0212 if (memcmp(Name.data()+2, "os", 2) != 0)
0213 break;
0214 return "\x27"; // "apos"
0215 case 'u': // 1 string to match.
0216 if (memcmp(Name.data()+2, "ml", 2) != 0)
0217 break;
0218 return "\xc3\xa4"; // "auml"
0219 }
0220 break;
0221 case 'b': // 1 string to match.
0222 if (memcmp(Name.data()+1, "eta", 3) != 0)
0223 break;
0224 return "\xce\xb2"; // "beta"
0225 case 'c': // 1 string to match.
0226 if (memcmp(Name.data()+1, "opy", 3) != 0)
0227 break;
0228 return "\xc2\xa9"; // "copy"
0229 case 'e': // 1 string to match.
0230 if (memcmp(Name.data()+1, "uml", 3) != 0)
0231 break;
0232 return "\xc3\xab"; // "euml"
0233 case 'i': // 3 strings to match.
0234 switch (Name[1]) {
0235 default: break;
0236 case 'o': // 1 string to match.
0237 if (memcmp(Name.data()+2, "ta", 2) != 0)
0238 break;
0239 return "\xce\xb9"; // "iota"
0240 case 's': // 1 string to match.
0241 if (memcmp(Name.data()+2, "in", 2) != 0)
0242 break;
0243 return "\xe2\x88\x88"; // "isin"
0244 case 'u': // 1 string to match.
0245 if (memcmp(Name.data()+2, "ml", 2) != 0)
0246 break;
0247 return "\xc3\xaf"; // "iuml"
0248 }
0249 break;
0250 case 'l': // 1 string to match.
0251 if (memcmp(Name.data()+1, "arr", 3) != 0)
0252 break;
0253 return "\xe2\x86\x90"; // "larr"
0254 case 'n': // 1 string to match.
0255 if (memcmp(Name.data()+1, "bsp", 3) != 0)
0256 break;
0257 return "\xc2\xa0"; // "nbsp"
0258 case 'o': // 1 string to match.
0259 if (memcmp(Name.data()+1, "uml", 3) != 0)
0260 break;
0261 return "\xc3\xb6"; // "ouml"
0262 case 'p': // 4 strings to match.
0263 switch (Name[1]) {
0264 default: break;
0265 case 'a': // 1 string to match.
0266 if (memcmp(Name.data()+2, "rt", 2) != 0)
0267 break;
0268 return "\xe2\x88\x82"; // "part"
0269 case 'e': // 1 string to match.
0270 if (memcmp(Name.data()+2, "rp", 2) != 0)
0271 break;
0272 return "\xe2\x8a\xa5"; // "perp"
0273 case 'r': // 2 strings to match.
0274 if (Name[2] != 'o')
0275 break;
0276 switch (Name[3]) {
0277 default: break;
0278 case 'd': // 1 string to match.
0279 return "\xe2\x88\x8f"; // "prod"
0280 case 'p': // 1 string to match.
0281 return "\xe2\x88\x9d"; // "prop"
0282 }
0283 break;
0284 }
0285 break;
0286 case 'q': // 1 string to match.
0287 if (memcmp(Name.data()+1, "uot", 3) != 0)
0288 break;
0289 return "\x22"; // "quot"
0290 case 'r': // 1 string to match.
0291 if (memcmp(Name.data()+1, "arr", 3) != 0)
0292 break;
0293 return "\xe2\x86\x92"; // "rarr"
0294 case 's': // 2 strings to match.
0295 switch (Name[1]) {
0296 default: break;
0297 case 'd': // 1 string to match.
0298 if (memcmp(Name.data()+2, "ot", 2) != 0)
0299 break;
0300 return "\xe2\x8b\x85"; // "sdot"
0301 case 'e': // 1 string to match.
0302 if (memcmp(Name.data()+2, "ct", 2) != 0)
0303 break;
0304 return "\xc2\xa7"; // "sect"
0305 }
0306 break;
0307 case 'u': // 1 string to match.
0308 if (memcmp(Name.data()+1, "uml", 3) != 0)
0309 break;
0310 return "\xc3\xbc"; // "uuml"
0311 case 'y': // 1 string to match.
0312 if (memcmp(Name.data()+1, "uml", 3) != 0)
0313 break;
0314 return "\xc3\xbf"; // "yuml"
0315 case 'z': // 1 string to match.
0316 if (memcmp(Name.data()+1, "eta", 3) != 0)
0317 break;
0318 return "\xce\xb6"; // "zeta"
0319 }
0320 break;
0321 case 5: // 48 strings to match.
0322 switch (Name[0]) {
0323 default: break;
0324 case 'A': // 2 strings to match.
0325 switch (Name[1]) {
0326 default: break;
0327 case 'c': // 1 string to match.
0328 if (memcmp(Name.data()+2, "irc", 3) != 0)
0329 break;
0330 return "\xc3\x82"; // "Acirc"
0331 case 'r': // 1 string to match.
0332 if (memcmp(Name.data()+2, "ing", 3) != 0)
0333 break;
0334 return "\xc3\x85"; // "Aring"
0335 }
0336 break;
0337 case 'D': // 1 string to match.
0338 if (memcmp(Name.data()+1, "elta", 4) != 0)
0339 break;
0340 return "\xce\x94"; // "Delta"
0341 case 'E': // 1 string to match.
0342 if (memcmp(Name.data()+1, "circ", 4) != 0)
0343 break;
0344 return "\xc3\x8a"; // "Ecirc"
0345 case 'G': // 1 string to match.
0346 if (memcmp(Name.data()+1, "amma", 4) != 0)
0347 break;
0348 return "\xce\x93"; // "Gamma"
0349 case 'I': // 1 string to match.
0350 if (memcmp(Name.data()+1, "circ", 4) != 0)
0351 break;
0352 return "\xc3\x8e"; // "Icirc"
0353 case 'O': // 2 strings to match.
0354 switch (Name[1]) {
0355 default: break;
0356 case 'c': // 1 string to match.
0357 if (memcmp(Name.data()+2, "irc", 3) != 0)
0358 break;
0359 return "\xc3\x94"; // "Ocirc"
0360 case 'm': // 1 string to match.
0361 if (memcmp(Name.data()+2, "ega", 3) != 0)
0362 break;
0363 return "\xce\xa9"; // "Omega"
0364 }
0365 break;
0366 case 'P': // 1 string to match.
0367 if (memcmp(Name.data()+1, "rime", 4) != 0)
0368 break;
0369 return "\xe2\x80\xb3"; // "Prime"
0370 case 'S': // 1 string to match.
0371 if (memcmp(Name.data()+1, "igma", 4) != 0)
0372 break;
0373 return "\xce\xa3"; // "Sigma"
0374 case 'T': // 2 strings to match.
0375 switch (Name[1]) {
0376 default: break;
0377 case 'R': // 1 string to match.
0378 if (memcmp(Name.data()+2, "ADE", 3) != 0)
0379 break;
0380 return "\xe2\x84\xa2"; // "TRADE"
0381 case 'h': // 1 string to match.
0382 if (memcmp(Name.data()+2, "eta", 3) != 0)
0383 break;
0384 return "\xce\x98"; // "Theta"
0385 }
0386 break;
0387 case 'U': // 1 string to match.
0388 if (memcmp(Name.data()+1, "circ", 4) != 0)
0389 break;
0390 return "\xc3\x9b"; // "Ucirc"
0391 case 'Y': // 1 string to match.
0392 if (memcmp(Name.data()+1, "circ", 4) != 0)
0393 break;
0394 return "\xc5\xb6"; // "Ycirc"
0395 case 'a': // 4 strings to match.
0396 switch (Name[1]) {
0397 default: break;
0398 case 'c': // 1 string to match.
0399 if (memcmp(Name.data()+2, "irc", 3) != 0)
0400 break;
0401 return "\xc3\xa2"; // "acirc"
0402 case 'l': // 1 string to match.
0403 if (memcmp(Name.data()+2, "pha", 3) != 0)
0404 break;
0405 return "\xce\xb1"; // "alpha"
0406 case 'r': // 1 string to match.
0407 if (memcmp(Name.data()+2, "ing", 3) != 0)
0408 break;
0409 return "\xc3\xa5"; // "aring"
0410 case 's': // 1 string to match.
0411 if (memcmp(Name.data()+2, "ymp", 3) != 0)
0412 break;
0413 return "\xe2\x89\x88"; // "asymp"
0414 }
0415 break;
0416 case 'd': // 1 string to match.
0417 if (memcmp(Name.data()+1, "elta", 4) != 0)
0418 break;
0419 return "\xce\xb4"; // "delta"
0420 case 'e': // 3 strings to match.
0421 switch (Name[1]) {
0422 default: break;
0423 case 'c': // 1 string to match.
0424 if (memcmp(Name.data()+2, "irc", 3) != 0)
0425 break;
0426 return "\xc3\xaa"; // "ecirc"
0427 case 'm': // 1 string to match.
0428 if (memcmp(Name.data()+2, "pty", 3) != 0)
0429 break;
0430 return "\xe2\x88\x85"; // "empty"
0431 case 'q': // 1 string to match.
0432 if (memcmp(Name.data()+2, "uiv", 3) != 0)
0433 break;
0434 return "\xe2\x89\xa1"; // "equiv"
0435 }
0436 break;
0437 case 'g': // 1 string to match.
0438 if (memcmp(Name.data()+1, "amma", 4) != 0)
0439 break;
0440 return "\xce\xb3"; // "gamma"
0441 case 'i': // 2 strings to match.
0442 switch (Name[1]) {
0443 default: break;
0444 case 'c': // 1 string to match.
0445 if (memcmp(Name.data()+2, "irc", 3) != 0)
0446 break;
0447 return "\xc3\xae"; // "icirc"
0448 case 'n': // 1 string to match.
0449 if (memcmp(Name.data()+2, "fin", 3) != 0)
0450 break;
0451 return "\xe2\x88\x9e"; // "infin"
0452 }
0453 break;
0454 case 'k': // 1 string to match.
0455 if (memcmp(Name.data()+1, "appa", 4) != 0)
0456 break;
0457 return "\xce\xba"; // "kappa"
0458 case 'l': // 3 strings to match.
0459 switch (Name[1]) {
0460 default: break;
0461 case 'c': // 1 string to match.
0462 if (memcmp(Name.data()+2, "eil", 3) != 0)
0463 break;
0464 return "\xe2\x8c\x88"; // "lceil"
0465 case 'd': // 1 string to match.
0466 if (memcmp(Name.data()+2, "quo", 3) != 0)
0467 break;
0468 return "\xe2\x80\x9c"; // "ldquo"
0469 case 's': // 1 string to match.
0470 if (memcmp(Name.data()+2, "quo", 3) != 0)
0471 break;
0472 return "\xe2\x80\x98"; // "lsquo"
0473 }
0474 break;
0475 case 'm': // 2 strings to match.
0476 switch (Name[1]) {
0477 default: break;
0478 case 'd': // 1 string to match.
0479 if (memcmp(Name.data()+2, "ash", 3) != 0)
0480 break;
0481 return "\xe2\x80\x94"; // "mdash"
0482 case 'i': // 1 string to match.
0483 if (memcmp(Name.data()+2, "nus", 3) != 0)
0484 break;
0485 return "\xe2\x88\x92"; // "minus"
0486 }
0487 break;
0488 case 'n': // 3 strings to match.
0489 switch (Name[1]) {
0490 default: break;
0491 case 'a': // 1 string to match.
0492 if (memcmp(Name.data()+2, "bla", 3) != 0)
0493 break;
0494 return "\xe2\x88\x87"; // "nabla"
0495 case 'd': // 1 string to match.
0496 if (memcmp(Name.data()+2, "ash", 3) != 0)
0497 break;
0498 return "\xe2\x80\x93"; // "ndash"
0499 case 'o': // 1 string to match.
0500 if (memcmp(Name.data()+2, "tin", 3) != 0)
0501 break;
0502 return "\xe2\x88\x89"; // "notin"
0503 }
0504 break;
0505 case 'o': // 2 strings to match.
0506 switch (Name[1]) {
0507 default: break;
0508 case 'c': // 1 string to match.
0509 if (memcmp(Name.data()+2, "irc", 3) != 0)
0510 break;
0511 return "\xc3\xb4"; // "ocirc"
0512 case 'm': // 1 string to match.
0513 if (memcmp(Name.data()+2, "ega", 3) != 0)
0514 break;
0515 return "\xcf\x89"; // "omega"
0516 }
0517 break;
0518 case 'p': // 1 string to match.
0519 if (memcmp(Name.data()+1, "rime", 4) != 0)
0520 break;
0521 return "\xe2\x80\xb2"; // "prime"
0522 case 'r': // 4 strings to match.
0523 switch (Name[1]) {
0524 default: break;
0525 case 'a': // 1 string to match.
0526 if (memcmp(Name.data()+2, "dic", 3) != 0)
0527 break;
0528 return "\xe2\x88\x9a"; // "radic"
0529 case 'c': // 1 string to match.
0530 if (memcmp(Name.data()+2, "eil", 3) != 0)
0531 break;
0532 return "\xe2\x8c\x89"; // "rceil"
0533 case 'd': // 1 string to match.
0534 if (memcmp(Name.data()+2, "quo", 3) != 0)
0535 break;
0536 return "\xe2\x80\x9d"; // "rdquo"
0537 case 's': // 1 string to match.
0538 if (memcmp(Name.data()+2, "quo", 3) != 0)
0539 break;
0540 return "\xe2\x80\x99"; // "rsquo"
0541 }
0542 break;
0543 case 's': // 2 strings to match.
0544 switch (Name[1]) {
0545 default: break;
0546 case 'i': // 1 string to match.
0547 if (memcmp(Name.data()+2, "gma", 3) != 0)
0548 break;
0549 return "\xcf\x83"; // "sigma"
0550 case 'z': // 1 string to match.
0551 if (memcmp(Name.data()+2, "lig", 3) != 0)
0552 break;
0553 return "\xc3\x9f"; // "szlig"
0554 }
0555 break;
0556 case 't': // 3 strings to match.
0557 switch (Name[1]) {
0558 default: break;
0559 case 'h': // 1 string to match.
0560 if (memcmp(Name.data()+2, "eta", 3) != 0)
0561 break;
0562 return "\xce\xb8"; // "theta"
0563 case 'i': // 1 string to match.
0564 if (memcmp(Name.data()+2, "mes", 3) != 0)
0565 break;
0566 return "\xc3\x97"; // "times"
0567 case 'r': // 1 string to match.
0568 if (memcmp(Name.data()+2, "ade", 3) != 0)
0569 break;
0570 return "\xe2\x84\xa2"; // "trade"
0571 }
0572 break;
0573 case 'u': // 1 string to match.
0574 if (memcmp(Name.data()+1, "circ", 4) != 0)
0575 break;
0576 return "\xc3\xbb"; // "ucirc"
0577 case 'y': // 1 string to match.
0578 if (memcmp(Name.data()+1, "circ", 4) != 0)
0579 break;
0580 return "\xc5\xb7"; // "ycirc"
0581 }
0582 break;
0583 case 6: // 37 strings to match.
0584 switch (Name[0]) {
0585 default: break;
0586 case 'A': // 3 strings to match.
0587 switch (Name[1]) {
0588 default: break;
0589 case 'a': // 1 string to match.
0590 if (memcmp(Name.data()+2, "cute", 4) != 0)
0591 break;
0592 return "\xc3\x81"; // "Aacute"
0593 case 'g': // 1 string to match.
0594 if (memcmp(Name.data()+2, "rave", 4) != 0)
0595 break;
0596 return "\xc3\x80"; // "Agrave"
0597 case 't': // 1 string to match.
0598 if (memcmp(Name.data()+2, "ilde", 4) != 0)
0599 break;
0600 return "\xc3\x83"; // "Atilde"
0601 }
0602 break;
0603 case 'C': // 1 string to match.
0604 if (memcmp(Name.data()+1, "cedil", 5) != 0)
0605 break;
0606 return "\xc3\x87"; // "Ccedil"
0607 case 'E': // 2 strings to match.
0608 switch (Name[1]) {
0609 default: break;
0610 case 'a': // 1 string to match.
0611 if (memcmp(Name.data()+2, "cute", 4) != 0)
0612 break;
0613 return "\xc3\x89"; // "Eacute"
0614 case 'g': // 1 string to match.
0615 if (memcmp(Name.data()+2, "rave", 4) != 0)
0616 break;
0617 return "\xc3\x88"; // "Egrave"
0618 }
0619 break;
0620 case 'I': // 2 strings to match.
0621 switch (Name[1]) {
0622 default: break;
0623 case 'a': // 1 string to match.
0624 if (memcmp(Name.data()+2, "cute", 4) != 0)
0625 break;
0626 return "\xc3\x8d"; // "Iacute"
0627 case 'g': // 1 string to match.
0628 if (memcmp(Name.data()+2, "rave", 4) != 0)
0629 break;
0630 return "\xc3\x8c"; // "Igrave"
0631 }
0632 break;
0633 case 'L': // 1 string to match.
0634 if (memcmp(Name.data()+1, "ambda", 5) != 0)
0635 break;
0636 return "\xce\x9b"; // "Lambda"
0637 case 'N': // 1 string to match.
0638 if (memcmp(Name.data()+1, "tilde", 5) != 0)
0639 break;
0640 return "\xc3\x91"; // "Ntilde"
0641 case 'O': // 3 strings to match.
0642 switch (Name[1]) {
0643 default: break;
0644 case 'a': // 1 string to match.
0645 if (memcmp(Name.data()+2, "cute", 4) != 0)
0646 break;
0647 return "\xc3\x93"; // "Oacute"
0648 case 'g': // 1 string to match.
0649 if (memcmp(Name.data()+2, "rave", 4) != 0)
0650 break;
0651 return "\xc3\x92"; // "Ograve"
0652 case 't': // 1 string to match.
0653 if (memcmp(Name.data()+2, "ilde", 4) != 0)
0654 break;
0655 return "\xc3\x95"; // "Otilde"
0656 }
0657 break;
0658 case 'U': // 2 strings to match.
0659 switch (Name[1]) {
0660 default: break;
0661 case 'a': // 1 string to match.
0662 if (memcmp(Name.data()+2, "cute", 4) != 0)
0663 break;
0664 return "\xc3\x9a"; // "Uacute"
0665 case 'g': // 1 string to match.
0666 if (memcmp(Name.data()+2, "rave", 4) != 0)
0667 break;
0668 return "\xc3\x99"; // "Ugrave"
0669 }
0670 break;
0671 case 'Y': // 1 string to match.
0672 if (memcmp(Name.data()+1, "acute", 5) != 0)
0673 break;
0674 return "\xc3\x9d"; // "Yacute"
0675 case 'a': // 3 strings to match.
0676 switch (Name[1]) {
0677 default: break;
0678 case 'a': // 1 string to match.
0679 if (memcmp(Name.data()+2, "cute", 4) != 0)
0680 break;
0681 return "\xc3\xa1"; // "aacute"
0682 case 'g': // 1 string to match.
0683 if (memcmp(Name.data()+2, "rave", 4) != 0)
0684 break;
0685 return "\xc3\xa0"; // "agrave"
0686 case 't': // 1 string to match.
0687 if (memcmp(Name.data()+2, "ilde", 4) != 0)
0688 break;
0689 return "\xc3\xa3"; // "atilde"
0690 }
0691 break;
0692 case 'c': // 1 string to match.
0693 if (memcmp(Name.data()+1, "cedil", 5) != 0)
0694 break;
0695 return "\xc3\xa7"; // "ccedil"
0696 case 'e': // 2 strings to match.
0697 switch (Name[1]) {
0698 default: break;
0699 case 'a': // 1 string to match.
0700 if (memcmp(Name.data()+2, "cute", 4) != 0)
0701 break;
0702 return "\xc3\xa9"; // "eacute"
0703 case 'g': // 1 string to match.
0704 if (memcmp(Name.data()+2, "rave", 4) != 0)
0705 break;
0706 return "\xc3\xa8"; // "egrave"
0707 }
0708 break;
0709 case 'i': // 2 strings to match.
0710 switch (Name[1]) {
0711 default: break;
0712 case 'a': // 1 string to match.
0713 if (memcmp(Name.data()+2, "cute", 4) != 0)
0714 break;
0715 return "\xc3\xad"; // "iacute"
0716 case 'g': // 1 string to match.
0717 if (memcmp(Name.data()+2, "rave", 4) != 0)
0718 break;
0719 return "\xc3\xac"; // "igrave"
0720 }
0721 break;
0722 case 'l': // 2 strings to match.
0723 switch (Name[1]) {
0724 default: break;
0725 case 'a': // 1 string to match.
0726 if (memcmp(Name.data()+2, "mbda", 4) != 0)
0727 break;
0728 return "\xce\xbb"; // "lambda"
0729 case 'f': // 1 string to match.
0730 if (memcmp(Name.data()+2, "loor", 4) != 0)
0731 break;
0732 return "\xe2\x8c\x8a"; // "lfloor"
0733 }
0734 break;
0735 case 'n': // 1 string to match.
0736 if (memcmp(Name.data()+1, "tilde", 5) != 0)
0737 break;
0738 return "\xc3\xb1"; // "ntilde"
0739 case 'o': // 3 strings to match.
0740 switch (Name[1]) {
0741 default: break;
0742 case 'a': // 1 string to match.
0743 if (memcmp(Name.data()+2, "cute", 4) != 0)
0744 break;
0745 return "\xc3\xb3"; // "oacute"
0746 case 'g': // 1 string to match.
0747 if (memcmp(Name.data()+2, "rave", 4) != 0)
0748 break;
0749 return "\xc3\xb2"; // "ograve"
0750 case 't': // 1 string to match.
0751 if (memcmp(Name.data()+2, "ilde", 4) != 0)
0752 break;
0753 return "\xc3\xb5"; // "otilde"
0754 }
0755 break;
0756 case 'p': // 1 string to match.
0757 if (memcmp(Name.data()+1, "lusmn", 5) != 0)
0758 break;
0759 return "\xc2\xb1"; // "plusmn"
0760 case 'r': // 1 string to match.
0761 if (memcmp(Name.data()+1, "floor", 5) != 0)
0762 break;
0763 return "\xe2\x8c\x8b"; // "rfloor"
0764 case 's': // 1 string to match.
0765 if (memcmp(Name.data()+1, "igmaf", 5) != 0)
0766 break;
0767 return "\xcf\x82"; // "sigmaf"
0768 case 'u': // 2 strings to match.
0769 switch (Name[1]) {
0770 default: break;
0771 case 'a': // 1 string to match.
0772 if (memcmp(Name.data()+2, "cute", 4) != 0)
0773 break;
0774 return "\xc3\xba"; // "uacute"
0775 case 'g': // 1 string to match.
0776 if (memcmp(Name.data()+2, "rave", 4) != 0)
0777 break;
0778 return "\xc3\xb9"; // "ugrave"
0779 }
0780 break;
0781 case 'y': // 2 strings to match.
0782 switch (Name[1]) {
0783 default: break;
0784 case 'a': // 1 string to match.
0785 if (memcmp(Name.data()+2, "cute", 4) != 0)
0786 break;
0787 return "\xc3\xbd"; // "yacute"
0788 case 'g': // 1 string to match.
0789 if (memcmp(Name.data()+2, "rave", 4) != 0)
0790 break;
0791 return "\xe1\xbb\xb3"; // "ygrave"
0792 }
0793 break;
0794 }
0795 break;
0796 case 7: // 3 strings to match.
0797 switch (Name[0]) {
0798 default: break;
0799 case 'U': // 1 string to match.
0800 if (memcmp(Name.data()+1, "psilon", 6) != 0)
0801 break;
0802 return "\xce\xa5"; // "Upsilon"
0803 case 'e': // 1 string to match.
0804 if (memcmp(Name.data()+1, "psilon", 6) != 0)
0805 break;
0806 return "\xce\xb5"; // "epsilon"
0807 case 'u': // 1 string to match.
0808 if (memcmp(Name.data()+1, "psilon", 6) != 0)
0809 break;
0810 return "\xcf\x85"; // "upsilon"
0811 }
0812 break;
0813 }
0814 return StringRef();
0815 }
0816