LCOV - code coverage report
Current view: top level - build-llvm/tools/clang/include/clang/AST - CommentHTMLNamedCharacterReferences.inc (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 32 348 9.2 %
Date: 2018-10-20 13:21:21 Functions: 1 1 100.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
       2             : |*                                                                            *|
       3             : |* HTML named character reference to UTF-8 translation                        *|
       4             : |*                                                                            *|
       5             : |* Automatically generated file, do not edit!                                 *|
       6             : |*                                                                            *|
       7             : \*===----------------------------------------------------------------------===*/
       8             : 
       9          52 : StringRef translateHTMLNamedCharacterReferenceToUTF8(
      10             :                                              StringRef Name) {
      11          52 :   switch (Name.size()) {
      12             :   default: break;
      13          13 :   case 2:        // 15 strings to match.
      14             :     switch (Name[0]) {
      15             :     default: break;
      16           0 :     case 'G':    // 2 strings to match.
      17             :       switch (Name[1]) {
      18             :       default: break;
      19             :       case 'T':  // 1 string to match.
      20           0 :         return "\x3e";         // "GT"
      21             :       case 't':  // 1 string to match.
      22           0 :         return "\x3e";         // "Gt"
      23             :       }
      24             :       break;
      25           0 :     case 'L':    // 2 strings to match.
      26             :       switch (Name[1]) {
      27             :       default: break;
      28             :       case 'T':  // 1 string to match.
      29           0 :         return "\x3c";         // "LT"
      30             :       case 't':  // 1 string to match.
      31           0 :         return "\x3c";         // "Lt"
      32             :       }
      33             :       break;
      34           0 :     case 'P':    // 1 string to match.
      35           0 :       if (Name[1] != 'i')
      36             :         break;
      37           0 :       return "\xce\xa0";       // "Pi"
      38           0 :     case 'X':    // 1 string to match.
      39           0 :       if (Name[1] != 'i')
      40             :         break;
      41           0 :       return "\xce\x9e";       // "Xi"
      42           4 :     case 'g':    // 2 strings to match.
      43             :       switch (Name[1]) {
      44             :       default: break;
      45             :       case 'e':  // 1 string to match.
      46           0 :         return "\xe2\x89\xa5";         // "ge"
      47             :       case 't':  // 1 string to match.
      48           4 :         return "\x3e";         // "gt"
      49             :       }
      50             :       break;
      51           9 :     case 'l':    // 2 strings to match.
      52             :       switch (Name[1]) {
      53             :       default: break;
      54             :       case 'e':  // 1 string to match.
      55           0 :         return "\xe2\x89\xa4";         // "le"
      56             :       case 't':  // 1 string to match.
      57           9 :         return "\x3c";         // "lt"
      58             :       }
      59             :       break;
      60           0 :     case 'm':    // 1 string to match.
      61           0 :       if (Name[1] != 'u')
      62             :         break;
      63           0 :       return "\xce\xbc";       // "mu"
      64           0 :     case 'n':    // 2 strings to match.
      65             :       switch (Name[1]) {
      66             :       default: break;
      67             :       case 'e':  // 1 string to match.
      68           0 :         return "\xe2\x89\xa0";         // "ne"
      69             :       case 'u':  // 1 string to match.
      70           0 :         return "\xce\xbd";     // "nu"
      71             :       }
      72             :       break;
      73           0 :     case 'p':    // 1 string to match.
      74           0 :       if (Name[1] != 'i')
      75             :         break;
      76           0 :       return "\xcf\x80";       // "pi"
      77           0 :     case 'x':    // 1 string to match.
      78           0 :       if (Name[1] != 'i')
      79             :         break;
      80           0 :       return "\xce\xbe";       // "xi"
      81             :     }
      82             :     break;
      83          11 :   case 3:        // 16 strings to match.
      84             :     switch (Name[0]) {
      85             :     default: break;
      86             :     case 'A':    // 1 string to match.
      87           0 :       if (memcmp(Name.data()+1, "MP", 2) != 0)
      88             :         break;
      89           0 :       return "\x26";   // "AMP"
      90           0 :     case 'P':    // 2 strings to match.
      91             :       switch (Name[1]) {
      92             :       default: break;
      93           0 :       case 'h':  // 1 string to match.
      94           0 :         if (Name[2] != 'i')
      95             :           break;
      96           0 :         return "\xce\xa6";     // "Phi"
      97           0 :       case 's':  // 1 string to match.
      98           0 :         if (Name[2] != 'i')
      99             :           break;
     100           0 :         return "\xce\xa8";     // "Psi"
     101             :       }
     102             :       break;
     103             :     case 'R':    // 1 string to match.
     104           0 :       if (memcmp(Name.data()+1, "EG", 2) != 0)
     105             :         break;
     106           0 :       return "\xc2\xae";       // "REG"
     107             :     case 'a':    // 1 string to match.
     108           7 :       if (memcmp(Name.data()+1, "mp", 2) != 0)
     109             :         break;
     110           7 :       return "\x26";   // "amp"
     111             :     case 'c':    // 1 string to match.
     112           0 :       if (memcmp(Name.data()+1, "hi", 2) != 0)
     113             :         break;
     114           0 :       return "\xcf\x87";       // "chi"
     115             :     case 'd':    // 1 string to match.
     116           0 :       if (memcmp(Name.data()+1, "eg", 2) != 0)
     117             :         break;
     118           0 :       return "\xc2\xb0";       // "deg"
     119             :     case 'e':    // 1 string to match.
     120           0 :       if (memcmp(Name.data()+1, "ta", 2) != 0)
     121             :         break;
     122           0 :       return "\xce\xb7";       // "eta"
     123             :     case 'i':    // 1 string to match.
     124           0 :       if (memcmp(Name.data()+1, "nt", 2) != 0)
     125             :         break;
     126           0 :       return "\xe2\x88\xab";   // "int"
     127           0 :     case 'p':    // 2 strings to match.
     128             :       switch (Name[1]) {
     129             :       default: break;
     130           0 :       case 'h':  // 1 string to match.
     131           0 :         if (Name[2] != 'i')
     132             :           break;
     133           0 :         return "\xcf\x86";     // "phi"
     134           0 :       case 's':  // 1 string to match.
     135           0 :         if (Name[2] != 'i')
     136             :           break;
     137           0 :         return "\xcf\x88";     // "psi"
     138             :       }
     139             :       break;
     140           4 :     case 'r':    // 2 strings to match.
     141             :       switch (Name[1]) {
     142             :       default: break;
     143           4 :       case 'e':  // 1 string to match.
     144           4 :         if (Name[2] != 'g')
     145             :           break;
     146           4 :         return "\xc2\xae";     // "reg"
     147           0 :       case 'h':  // 1 string to match.
     148           0 :         if (Name[2] != 'o')
     149             :           break;
     150           0 :         return "\xcf\x81";     // "rho"
     151             :       }
     152             :       break;
     153           0 :     case 's':    // 2 strings to match.
     154             :       switch (Name[1]) {
     155             :       default: break;
     156           0 :       case 'i':  // 1 string to match.
     157           0 :         if (Name[2] != 'm')
     158             :           break;
     159           0 :         return "\xe2\x88\xbc";         // "sim"
     160           0 :       case 'u':  // 1 string to match.
     161           0 :         if (Name[2] != 'm')
     162             :           break;
     163           0 :         return "\xe2\x88\x91";         // "sum"
     164             :       }
     165             :       break;
     166             :     case 't':    // 1 string to match.
     167           0 :       if (memcmp(Name.data()+1, "au", 2) != 0)
     168             :         break;
     169           0 :       return "\xcf\x84";       // "tau"
     170             :     }
     171             :     break;
     172          16 :   case 4:        // 30 strings to match.
     173             :     switch (Name[0]) {
     174             :     default: break;
     175             :     case 'A':    // 1 string to match.
     176           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     177             :         break;
     178           0 :       return "\xc3\x84";       // "Auml"
     179             :     case 'C':    // 1 string to match.
     180           0 :       if (memcmp(Name.data()+1, "OPY", 3) != 0)
     181             :         break;
     182           0 :       return "\xc2\xa9";       // "COPY"
     183             :     case 'E':    // 1 string to match.
     184           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     185             :         break;
     186           0 :       return "\xc3\x8b";       // "Euml"
     187             :     case 'I':    // 1 string to match.
     188           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     189             :         break;
     190           0 :       return "\xc3\x8f";       // "Iuml"
     191             :     case 'O':    // 1 string to match.
     192           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     193             :         break;
     194           0 :       return "\xc3\x96";       // "Ouml"
     195             :     case 'Q':    // 1 string to match.
     196           0 :       if (memcmp(Name.data()+1, "UOT", 3) != 0)
     197             :         break;
     198           0 :       return "\x22";   // "QUOT"
     199             :     case 'U':    // 1 string to match.
     200           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     201             :         break;
     202           0 :       return "\xc3\x9c";       // "Uuml"
     203             :     case 'Y':    // 1 string to match.
     204           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     205             :         break;
     206           0 :       return "\xc5\xb8";       // "Yuml"
     207           4 :     case 'a':    // 2 strings to match.
     208             :       switch (Name[1]) {
     209             :       default: break;
     210             :       case 'p':  // 1 string to match.
     211           4 :         if (memcmp(Name.data()+2, "os", 2) != 0)
     212             :           break;
     213           4 :         return "\x27";         // "apos"
     214             :       case 'u':  // 1 string to match.
     215           0 :         if (memcmp(Name.data()+2, "ml", 2) != 0)
     216             :           break;
     217           0 :         return "\xc3\xa4";     // "auml"
     218             :       }
     219             :       break;
     220             :     case 'b':    // 1 string to match.
     221           0 :       if (memcmp(Name.data()+1, "eta", 3) != 0)
     222             :         break;
     223           0 :       return "\xce\xb2";       // "beta"
     224             :     case 'c':    // 1 string to match.
     225           4 :       if (memcmp(Name.data()+1, "opy", 3) != 0)
     226             :         break;
     227           4 :       return "\xc2\xa9";       // "copy"
     228             :     case 'e':    // 1 string to match.
     229           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     230             :         break;
     231           0 :       return "\xc3\xab";       // "euml"
     232           0 :     case 'i':    // 3 strings to match.
     233             :       switch (Name[1]) {
     234             :       default: break;
     235             :       case 'o':  // 1 string to match.
     236           0 :         if (memcmp(Name.data()+2, "ta", 2) != 0)
     237             :           break;
     238           0 :         return "\xce\xb9";     // "iota"
     239             :       case 's':  // 1 string to match.
     240           0 :         if (memcmp(Name.data()+2, "in", 2) != 0)
     241             :           break;
     242           0 :         return "\xe2\x88\x88";         // "isin"
     243             :       case 'u':  // 1 string to match.
     244           0 :         if (memcmp(Name.data()+2, "ml", 2) != 0)
     245             :           break;
     246           0 :         return "\xc3\xaf";     // "iuml"
     247             :       }
     248             :       break;
     249             :     case 'l':    // 1 string to match.
     250           0 :       if (memcmp(Name.data()+1, "arr", 3) != 0)
     251             :         break;
     252           0 :       return "\xe2\x86\x90";   // "larr"
     253             :     case 'n':    // 1 string to match.
     254           4 :       if (memcmp(Name.data()+1, "bsp", 3) != 0)
     255             :         break;
     256           4 :       return "\xc2\xa0";       // "nbsp"
     257             :     case 'o':    // 1 string to match.
     258           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     259             :         break;
     260           0 :       return "\xc3\xb6";       // "ouml"
     261           0 :     case 'p':    // 4 strings to match.
     262             :       switch (Name[1]) {
     263             :       default: break;
     264             :       case 'a':  // 1 string to match.
     265           0 :         if (memcmp(Name.data()+2, "rt", 2) != 0)
     266             :           break;
     267           0 :         return "\xe2\x88\x82";         // "part"
     268             :       case 'e':  // 1 string to match.
     269           0 :         if (memcmp(Name.data()+2, "rp", 2) != 0)
     270             :           break;
     271           0 :         return "\xe2\x8a\xa5";         // "perp"
     272           0 :       case 'r':  // 2 strings to match.
     273           0 :         if (Name[2] != 'o')
     274             :           break;
     275             :         switch (Name[3]) {
     276             :         default: break;
     277             :         case 'd':        // 1 string to match.
     278           0 :           return "\xe2\x88\x8f";       // "prod"
     279             :         case 'p':        // 1 string to match.
     280           0 :           return "\xe2\x88\x9d";       // "prop"
     281             :         }
     282             :         break;
     283             :       }
     284             :       break;
     285             :     case 'q':    // 1 string to match.
     286           4 :       if (memcmp(Name.data()+1, "uot", 3) != 0)
     287             :         break;
     288           4 :       return "\x22";   // "quot"
     289             :     case 'r':    // 1 string to match.
     290           0 :       if (memcmp(Name.data()+1, "arr", 3) != 0)
     291             :         break;
     292           0 :       return "\xe2\x86\x92";   // "rarr"
     293           0 :     case 's':    // 2 strings to match.
     294             :       switch (Name[1]) {
     295             :       default: break;
     296             :       case 'd':  // 1 string to match.
     297           0 :         if (memcmp(Name.data()+2, "ot", 2) != 0)
     298             :           break;
     299           0 :         return "\xe2\x8b\x85";         // "sdot"
     300             :       case 'e':  // 1 string to match.
     301           0 :         if (memcmp(Name.data()+2, "ct", 2) != 0)
     302             :           break;
     303           0 :         return "\xc2\xa7";     // "sect"
     304             :       }
     305             :       break;
     306             :     case 'u':    // 1 string to match.
     307           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     308             :         break;
     309           0 :       return "\xc3\xbc";       // "uuml"
     310             :     case 'y':    // 1 string to match.
     311           0 :       if (memcmp(Name.data()+1, "uml", 3) != 0)
     312             :         break;
     313           0 :       return "\xc3\xbf";       // "yuml"
     314             :     case 'z':    // 1 string to match.
     315           0 :       if (memcmp(Name.data()+1, "eta", 3) != 0)
     316             :         break;
     317           0 :       return "\xce\xb6";       // "zeta"
     318             :     }
     319             :     break;
     320          12 :   case 5:        // 48 strings to match.
     321             :     switch (Name[0]) {
     322             :     default: break;
     323           0 :     case 'A':    // 2 strings to match.
     324             :       switch (Name[1]) {
     325             :       default: break;
     326             :       case 'c':  // 1 string to match.
     327           0 :         if (memcmp(Name.data()+2, "irc", 3) != 0)
     328             :           break;
     329           0 :         return "\xc3\x82";     // "Acirc"
     330             :       case 'r':  // 1 string to match.
     331           0 :         if (memcmp(Name.data()+2, "ing", 3) != 0)
     332             :           break;
     333           0 :         return "\xc3\x85";     // "Aring"
     334             :       }
     335             :       break;
     336             :     case 'D':    // 1 string to match.
     337           4 :       if (memcmp(Name.data()+1, "elta", 4) != 0)
     338             :         break;
     339           4 :       return "\xce\x94";       // "Delta"
     340             :     case 'E':    // 1 string to match.
     341           0 :       if (memcmp(Name.data()+1, "circ", 4) != 0)
     342             :         break;
     343           0 :       return "\xc3\x8a";       // "Ecirc"
     344             :     case 'G':    // 1 string to match.
     345           4 :       if (memcmp(Name.data()+1, "amma", 4) != 0)
     346             :         break;
     347           4 :       return "\xce\x93";       // "Gamma"
     348             :     case 'I':    // 1 string to match.
     349           0 :       if (memcmp(Name.data()+1, "circ", 4) != 0)
     350             :         break;
     351           0 :       return "\xc3\x8e";       // "Icirc"
     352           0 :     case 'O':    // 2 strings to match.
     353             :       switch (Name[1]) {
     354             :       default: break;
     355             :       case 'c':  // 1 string to match.
     356           0 :         if (memcmp(Name.data()+2, "irc", 3) != 0)
     357             :           break;
     358           0 :         return "\xc3\x94";     // "Ocirc"
     359             :       case 'm':  // 1 string to match.
     360           0 :         if (memcmp(Name.data()+2, "ega", 3) != 0)
     361             :           break;
     362           0 :         return "\xce\xa9";     // "Omega"
     363             :       }
     364             :       break;
     365             :     case 'P':    // 1 string to match.
     366           0 :       if (memcmp(Name.data()+1, "rime", 4) != 0)
     367             :         break;
     368           0 :       return "\xe2\x80\xb3";   // "Prime"
     369             :     case 'S':    // 1 string to match.
     370           0 :       if (memcmp(Name.data()+1, "igma", 4) != 0)
     371             :         break;
     372           0 :       return "\xce\xa3";       // "Sigma"
     373           0 :     case 'T':    // 2 strings to match.
     374             :       switch (Name[1]) {
     375             :       default: break;
     376             :       case 'R':  // 1 string to match.
     377           0 :         if (memcmp(Name.data()+2, "ADE", 3) != 0)
     378             :           break;
     379           0 :         return "\xe2\x84\xa2";         // "TRADE"
     380             :       case 'h':  // 1 string to match.
     381           0 :         if (memcmp(Name.data()+2, "eta", 3) != 0)
     382             :           break;
     383           0 :         return "\xce\x98";     // "Theta"
     384             :       }
     385             :       break;
     386             :     case 'U':    // 1 string to match.
     387           0 :       if (memcmp(Name.data()+1, "circ", 4) != 0)
     388             :         break;
     389           0 :       return "\xc3\x9b";       // "Ucirc"
     390             :     case 'Y':    // 1 string to match.
     391           0 :       if (memcmp(Name.data()+1, "circ", 4) != 0)
     392             :         break;
     393           0 :       return "\xc5\xb6";       // "Ycirc"
     394           0 :     case 'a':    // 4 strings to match.
     395             :       switch (Name[1]) {
     396             :       default: break;
     397             :       case 'c':  // 1 string to match.
     398           0 :         if (memcmp(Name.data()+2, "irc", 3) != 0)
     399             :           break;
     400           0 :         return "\xc3\xa2";     // "acirc"
     401             :       case 'l':  // 1 string to match.
     402           0 :         if (memcmp(Name.data()+2, "pha", 3) != 0)
     403             :           break;
     404           0 :         return "\xce\xb1";     // "alpha"
     405             :       case 'r':  // 1 string to match.
     406           0 :         if (memcmp(Name.data()+2, "ing", 3) != 0)
     407             :           break;
     408           0 :         return "\xc3\xa5";     // "aring"
     409             :       case 's':  // 1 string to match.
     410           0 :         if (memcmp(Name.data()+2, "ymp", 3) != 0)
     411             :           break;
     412           0 :         return "\xe2\x89\x88";         // "asymp"
     413             :       }
     414             :       break;
     415             :     case 'd':    // 1 string to match.
     416           0 :       if (memcmp(Name.data()+1, "elta", 4) != 0)
     417             :         break;
     418           0 :       return "\xce\xb4";       // "delta"
     419           0 :     case 'e':    // 3 strings to match.
     420             :       switch (Name[1]) {
     421             :       default: break;
     422             :       case 'c':  // 1 string to match.
     423           0 :         if (memcmp(Name.data()+2, "irc", 3) != 0)
     424             :           break;
     425           0 :         return "\xc3\xaa";     // "ecirc"
     426             :       case 'm':  // 1 string to match.
     427           0 :         if (memcmp(Name.data()+2, "pty", 3) != 0)
     428             :           break;
     429           0 :         return "\xe2\x88\x85";         // "empty"
     430             :       case 'q':  // 1 string to match.
     431           0 :         if (memcmp(Name.data()+2, "uiv", 3) != 0)
     432             :           break;
     433           0 :         return "\xe2\x89\xa1";         // "equiv"
     434             :       }
     435             :       break;
     436             :     case 'g':    // 1 string to match.
     437           0 :       if (memcmp(Name.data()+1, "amma", 4) != 0)
     438             :         break;
     439           0 :       return "\xce\xb3";       // "gamma"
     440           0 :     case 'i':    // 2 strings to match.
     441             :       switch (Name[1]) {
     442             :       default: break;
     443             :       case 'c':  // 1 string to match.
     444           0 :         if (memcmp(Name.data()+2, "irc", 3) != 0)
     445             :           break;
     446           0 :         return "\xc3\xae";     // "icirc"
     447             :       case 'n':  // 1 string to match.
     448           0 :         if (memcmp(Name.data()+2, "fin", 3) != 0)
     449             :           break;
     450           0 :         return "\xe2\x88\x9e";         // "infin"
     451             :       }
     452             :       break;
     453             :     case 'k':    // 1 string to match.
     454           0 :       if (memcmp(Name.data()+1, "appa", 4) != 0)
     455             :         break;
     456           0 :       return "\xce\xba";       // "kappa"
     457           0 :     case 'l':    // 3 strings to match.
     458             :       switch (Name[1]) {
     459             :       default: break;
     460             :       case 'c':  // 1 string to match.
     461           0 :         if (memcmp(Name.data()+2, "eil", 3) != 0)
     462             :           break;
     463           0 :         return "\xe2\x8c\x88";         // "lceil"
     464             :       case 'd':  // 1 string to match.
     465           0 :         if (memcmp(Name.data()+2, "quo", 3) != 0)
     466             :           break;
     467           0 :         return "\xe2\x80\x9c";         // "ldquo"
     468             :       case 's':  // 1 string to match.
     469           0 :         if (memcmp(Name.data()+2, "quo", 3) != 0)
     470             :           break;
     471           0 :         return "\xe2\x80\x98";         // "lsquo"
     472             :       }
     473             :       break;
     474           0 :     case 'm':    // 2 strings to match.
     475             :       switch (Name[1]) {
     476             :       default: break;
     477             :       case 'd':  // 1 string to match.
     478           0 :         if (memcmp(Name.data()+2, "ash", 3) != 0)
     479             :           break;
     480           0 :         return "\xe2\x80\x94";         // "mdash"
     481             :       case 'i':  // 1 string to match.
     482           0 :         if (memcmp(Name.data()+2, "nus", 3) != 0)
     483             :           break;
     484           0 :         return "\xe2\x88\x92";         // "minus"
     485             :       }
     486             :       break;
     487           0 :     case 'n':    // 3 strings to match.
     488             :       switch (Name[1]) {
     489             :       default: break;
     490             :       case 'a':  // 1 string to match.
     491           0 :         if (memcmp(Name.data()+2, "bla", 3) != 0)
     492             :           break;
     493           0 :         return "\xe2\x88\x87";         // "nabla"
     494             :       case 'd':  // 1 string to match.
     495           0 :         if (memcmp(Name.data()+2, "ash", 3) != 0)
     496             :           break;
     497           0 :         return "\xe2\x80\x93";         // "ndash"
     498             :       case 'o':  // 1 string to match.
     499           0 :         if (memcmp(Name.data()+2, "tin", 3) != 0)
     500             :           break;
     501           0 :         return "\xe2\x88\x89";         // "notin"
     502             :       }
     503             :       break;
     504           0 :     case 'o':    // 2 strings to match.
     505             :       switch (Name[1]) {
     506             :       default: break;
     507             :       case 'c':  // 1 string to match.
     508           0 :         if (memcmp(Name.data()+2, "irc", 3) != 0)
     509             :           break;
     510           0 :         return "\xc3\xb4";     // "ocirc"
     511             :       case 'm':  // 1 string to match.
     512           0 :         if (memcmp(Name.data()+2, "ega", 3) != 0)
     513             :           break;
     514           0 :         return "\xcf\x89";     // "omega"
     515             :       }
     516             :       break;
     517             :     case 'p':    // 1 string to match.
     518           0 :       if (memcmp(Name.data()+1, "rime", 4) != 0)
     519             :         break;
     520           0 :       return "\xe2\x80\xb2";   // "prime"
     521           0 :     case 'r':    // 4 strings to match.
     522             :       switch (Name[1]) {
     523             :       default: break;
     524             :       case 'a':  // 1 string to match.
     525           0 :         if (memcmp(Name.data()+2, "dic", 3) != 0)
     526             :           break;
     527           0 :         return "\xe2\x88\x9a";         // "radic"
     528             :       case 'c':  // 1 string to match.
     529           0 :         if (memcmp(Name.data()+2, "eil", 3) != 0)
     530             :           break;
     531           0 :         return "\xe2\x8c\x89";         // "rceil"
     532             :       case 'd':  // 1 string to match.
     533           0 :         if (memcmp(Name.data()+2, "quo", 3) != 0)
     534             :           break;
     535           0 :         return "\xe2\x80\x9d";         // "rdquo"
     536             :       case 's':  // 1 string to match.
     537           0 :         if (memcmp(Name.data()+2, "quo", 3) != 0)
     538             :           break;
     539           0 :         return "\xe2\x80\x99";         // "rsquo"
     540             :       }
     541             :       break;
     542           0 :     case 's':    // 2 strings to match.
     543             :       switch (Name[1]) {
     544             :       default: break;
     545             :       case 'i':  // 1 string to match.
     546           0 :         if (memcmp(Name.data()+2, "gma", 3) != 0)
     547             :           break;
     548           0 :         return "\xcf\x83";     // "sigma"
     549             :       case 'z':  // 1 string to match.
     550           0 :         if (memcmp(Name.data()+2, "lig", 3) != 0)
     551             :           break;
     552           0 :         return "\xc3\x9f";     // "szlig"
     553             :       }
     554             :       break;
     555           4 :     case 't':    // 3 strings to match.
     556             :       switch (Name[1]) {
     557             :       default: break;
     558             :       case 'h':  // 1 string to match.
     559           0 :         if (memcmp(Name.data()+2, "eta", 3) != 0)
     560             :           break;
     561           0 :         return "\xce\xb8";     // "theta"
     562             :       case 'i':  // 1 string to match.
     563           0 :         if (memcmp(Name.data()+2, "mes", 3) != 0)
     564             :           break;
     565           0 :         return "\xc3\x97";     // "times"
     566             :       case 'r':  // 1 string to match.
     567           4 :         if (memcmp(Name.data()+2, "ade", 3) != 0)
     568             :           break;
     569           4 :         return "\xe2\x84\xa2";         // "trade"
     570             :       }
     571             :       break;
     572             :     case 'u':    // 1 string to match.
     573           0 :       if (memcmp(Name.data()+1, "circ", 4) != 0)
     574             :         break;
     575           0 :       return "\xc3\xbb";       // "ucirc"
     576             :     case 'y':    // 1 string to match.
     577           0 :       if (memcmp(Name.data()+1, "circ", 4) != 0)
     578             :         break;
     579           0 :       return "\xc5\xb7";       // "ycirc"
     580             :     }
     581             :     break;
     582           0 :   case 6:        // 37 strings to match.
     583             :     switch (Name[0]) {
     584             :     default: break;
     585           0 :     case 'A':    // 3 strings to match.
     586             :       switch (Name[1]) {
     587             :       default: break;
     588             :       case 'a':  // 1 string to match.
     589           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     590             :           break;
     591           0 :         return "\xc3\x81";     // "Aacute"
     592             :       case 'g':  // 1 string to match.
     593           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     594             :           break;
     595           0 :         return "\xc3\x80";     // "Agrave"
     596             :       case 't':  // 1 string to match.
     597           0 :         if (memcmp(Name.data()+2, "ilde", 4) != 0)
     598             :           break;
     599           0 :         return "\xc3\x83";     // "Atilde"
     600             :       }
     601             :       break;
     602             :     case 'C':    // 1 string to match.
     603           0 :       if (memcmp(Name.data()+1, "cedil", 5) != 0)
     604             :         break;
     605           0 :       return "\xc3\x87";       // "Ccedil"
     606           0 :     case 'E':    // 2 strings to match.
     607             :       switch (Name[1]) {
     608             :       default: break;
     609             :       case 'a':  // 1 string to match.
     610           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     611             :           break;
     612           0 :         return "\xc3\x89";     // "Eacute"
     613             :       case 'g':  // 1 string to match.
     614           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     615             :           break;
     616           0 :         return "\xc3\x88";     // "Egrave"
     617             :       }
     618             :       break;
     619           0 :     case 'I':    // 2 strings to match.
     620             :       switch (Name[1]) {
     621             :       default: break;
     622             :       case 'a':  // 1 string to match.
     623           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     624             :           break;
     625           0 :         return "\xc3\x8d";     // "Iacute"
     626             :       case 'g':  // 1 string to match.
     627           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     628             :           break;
     629           0 :         return "\xc3\x8c";     // "Igrave"
     630             :       }
     631             :       break;
     632             :     case 'L':    // 1 string to match.
     633           0 :       if (memcmp(Name.data()+1, "ambda", 5) != 0)
     634             :         break;
     635           0 :       return "\xce\x9b";       // "Lambda"
     636             :     case 'N':    // 1 string to match.
     637           0 :       if (memcmp(Name.data()+1, "tilde", 5) != 0)
     638             :         break;
     639           0 :       return "\xc3\x91";       // "Ntilde"
     640           0 :     case 'O':    // 3 strings to match.
     641             :       switch (Name[1]) {
     642             :       default: break;
     643             :       case 'a':  // 1 string to match.
     644           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     645             :           break;
     646           0 :         return "\xc3\x93";     // "Oacute"
     647             :       case 'g':  // 1 string to match.
     648           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     649             :           break;
     650           0 :         return "\xc3\x92";     // "Ograve"
     651             :       case 't':  // 1 string to match.
     652           0 :         if (memcmp(Name.data()+2, "ilde", 4) != 0)
     653             :           break;
     654           0 :         return "\xc3\x95";     // "Otilde"
     655             :       }
     656             :       break;
     657           0 :     case 'U':    // 2 strings to match.
     658             :       switch (Name[1]) {
     659             :       default: break;
     660             :       case 'a':  // 1 string to match.
     661           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     662             :           break;
     663           0 :         return "\xc3\x9a";     // "Uacute"
     664             :       case 'g':  // 1 string to match.
     665           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     666             :           break;
     667           0 :         return "\xc3\x99";     // "Ugrave"
     668             :       }
     669             :       break;
     670             :     case 'Y':    // 1 string to match.
     671           0 :       if (memcmp(Name.data()+1, "acute", 5) != 0)
     672             :         break;
     673           0 :       return "\xc3\x9d";       // "Yacute"
     674           0 :     case 'a':    // 3 strings to match.
     675             :       switch (Name[1]) {
     676             :       default: break;
     677             :       case 'a':  // 1 string to match.
     678           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     679             :           break;
     680           0 :         return "\xc3\xa1";     // "aacute"
     681             :       case 'g':  // 1 string to match.
     682           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     683             :           break;
     684           0 :         return "\xc3\xa0";     // "agrave"
     685             :       case 't':  // 1 string to match.
     686           0 :         if (memcmp(Name.data()+2, "ilde", 4) != 0)
     687             :           break;
     688           0 :         return "\xc3\xa3";     // "atilde"
     689             :       }
     690             :       break;
     691             :     case 'c':    // 1 string to match.
     692           0 :       if (memcmp(Name.data()+1, "cedil", 5) != 0)
     693             :         break;
     694           0 :       return "\xc3\xa7";       // "ccedil"
     695           0 :     case 'e':    // 2 strings to match.
     696             :       switch (Name[1]) {
     697             :       default: break;
     698             :       case 'a':  // 1 string to match.
     699           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     700             :           break;
     701           0 :         return "\xc3\xa9";     // "eacute"
     702             :       case 'g':  // 1 string to match.
     703           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     704             :           break;
     705           0 :         return "\xc3\xa8";     // "egrave"
     706             :       }
     707             :       break;
     708           0 :     case 'i':    // 2 strings to match.
     709             :       switch (Name[1]) {
     710             :       default: break;
     711             :       case 'a':  // 1 string to match.
     712           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     713             :           break;
     714           0 :         return "\xc3\xad";     // "iacute"
     715             :       case 'g':  // 1 string to match.
     716           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     717             :           break;
     718           0 :         return "\xc3\xac";     // "igrave"
     719             :       }
     720             :       break;
     721           0 :     case 'l':    // 2 strings to match.
     722             :       switch (Name[1]) {
     723             :       default: break;
     724             :       case 'a':  // 1 string to match.
     725           0 :         if (memcmp(Name.data()+2, "mbda", 4) != 0)
     726             :           break;
     727           0 :         return "\xce\xbb";     // "lambda"
     728             :       case 'f':  // 1 string to match.
     729           0 :         if (memcmp(Name.data()+2, "loor", 4) != 0)
     730             :           break;
     731           0 :         return "\xe2\x8c\x8a";         // "lfloor"
     732             :       }
     733             :       break;
     734             :     case 'n':    // 1 string to match.
     735           0 :       if (memcmp(Name.data()+1, "tilde", 5) != 0)
     736             :         break;
     737           0 :       return "\xc3\xb1";       // "ntilde"
     738           0 :     case 'o':    // 3 strings to match.
     739             :       switch (Name[1]) {
     740             :       default: break;
     741             :       case 'a':  // 1 string to match.
     742           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     743             :           break;
     744           0 :         return "\xc3\xb3";     // "oacute"
     745             :       case 'g':  // 1 string to match.
     746           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     747             :           break;
     748           0 :         return "\xc3\xb2";     // "ograve"
     749             :       case 't':  // 1 string to match.
     750           0 :         if (memcmp(Name.data()+2, "ilde", 4) != 0)
     751             :           break;
     752           0 :         return "\xc3\xb5";     // "otilde"
     753             :       }
     754             :       break;
     755             :     case 'p':    // 1 string to match.
     756           0 :       if (memcmp(Name.data()+1, "lusmn", 5) != 0)
     757             :         break;
     758           0 :       return "\xc2\xb1";       // "plusmn"
     759             :     case 'r':    // 1 string to match.
     760           0 :       if (memcmp(Name.data()+1, "floor", 5) != 0)
     761             :         break;
     762           0 :       return "\xe2\x8c\x8b";   // "rfloor"
     763             :     case 's':    // 1 string to match.
     764           0 :       if (memcmp(Name.data()+1, "igmaf", 5) != 0)
     765             :         break;
     766           0 :       return "\xcf\x82";       // "sigmaf"
     767           0 :     case 'u':    // 2 strings to match.
     768             :       switch (Name[1]) {
     769             :       default: break;
     770             :       case 'a':  // 1 string to match.
     771           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     772             :           break;
     773           0 :         return "\xc3\xba";     // "uacute"
     774             :       case 'g':  // 1 string to match.
     775           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     776             :           break;
     777           0 :         return "\xc3\xb9";     // "ugrave"
     778             :       }
     779             :       break;
     780           0 :     case 'y':    // 2 strings to match.
     781             :       switch (Name[1]) {
     782             :       default: break;
     783             :       case 'a':  // 1 string to match.
     784           0 :         if (memcmp(Name.data()+2, "cute", 4) != 0)
     785             :           break;
     786           0 :         return "\xc3\xbd";     // "yacute"
     787             :       case 'g':  // 1 string to match.
     788           0 :         if (memcmp(Name.data()+2, "rave", 4) != 0)
     789             :           break;
     790           0 :         return "\xe1\xbb\xb3";         // "ygrave"
     791             :       }
     792             :       break;
     793             :     }
     794             :     break;
     795           0 :   case 7:        // 3 strings to match.
     796             :     switch (Name[0]) {
     797             :     default: break;
     798             :     case 'U':    // 1 string to match.
     799           0 :       if (memcmp(Name.data()+1, "psilon", 6) != 0)
     800             :         break;
     801           0 :       return "\xce\xa5";       // "Upsilon"
     802             :     case 'e':    // 1 string to match.
     803           0 :       if (memcmp(Name.data()+1, "psilon", 6) != 0)
     804             :         break;
     805           0 :       return "\xce\xb5";       // "epsilon"
     806             :     case 'u':    // 1 string to match.
     807           0 :       if (memcmp(Name.data()+1, "psilon", 6) != 0)
     808             :         break;
     809           0 :       return "\xcf\x85";       // "upsilon"
     810             :     }
     811             :     break;
     812             :   }
     813           0 :   return StringRef();
     814             : }
     815             : 

Generated by: LCOV version 1.13