Blame lib/iconv_open-solaris.h

Packit 8f70b4
/* ANSI-C code produced by gperf version 3.0.4 */
Packit 8f70b4
/* Command-line: gperf -m 10 ./iconv_open-solaris.gperf  */
Packit 8f70b4
/* Computed positions: -k'10' */
Packit 8f70b4
Packit 8f70b4
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
Packit 8f70b4
      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
Packit 8f70b4
      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
Packit 8f70b4
      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
Packit 8f70b4
      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
Packit 8f70b4
      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
Packit 8f70b4
      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
Packit 8f70b4
      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
Packit 8f70b4
      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
Packit 8f70b4
      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
Packit 8f70b4
      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
Packit 8f70b4
      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
Packit 8f70b4
      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
Packit 8f70b4
      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
Packit 8f70b4
      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
Packit 8f70b4
      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
Packit 8f70b4
      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
Packit 8f70b4
      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
Packit 8f70b4
      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
Packit 8f70b4
      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
Packit 8f70b4
      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
Packit 8f70b4
      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
Packit 8f70b4
      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
Packit 8f70b4
/* The character set is not based on ISO-646.  */
Packit 8f70b4
#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
Packit 8f70b4
#endif
Packit 8f70b4
Packit 8f70b4
#line 1 "./iconv_open-solaris.gperf"
Packit 8f70b4
struct mapping { int standard_name; const char vendor_name[10 + 1]; };
Packit 8f70b4
Packit 8f70b4
#define TOTAL_KEYWORDS 13
Packit 8f70b4
#define MIN_WORD_LENGTH 5
Packit 8f70b4
#define MAX_WORD_LENGTH 11
Packit 8f70b4
#define MIN_HASH_VALUE 5
Packit 8f70b4
#define MAX_HASH_VALUE 19
Packit 8f70b4
/* maximum key range = 15, duplicates = 0 */
Packit 8f70b4
Packit 8f70b4
#ifdef __GNUC__
Packit 8f70b4
__inline
Packit 8f70b4
#else
Packit 8f70b4
#ifdef __cplusplus
Packit 8f70b4
inline
Packit 8f70b4
#endif
Packit 8f70b4
#endif
Packit 8f70b4
static unsigned int
Packit 8f70b4
mapping_hash (register const char *str, register unsigned int len)
Packit 8f70b4
{
Packit 8f70b4
  static const unsigned char asso_values[] =
Packit 8f70b4
    {
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20,  0,
Packit 8f70b4
       9,  8,  7,  6,  5,  4,  3,  2, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20, 20, 20, 20, 20,
Packit 8f70b4
      20, 20, 20, 20, 20, 20
Packit 8f70b4
    };
Packit 8f70b4
  register int hval = len;
Packit 8f70b4
Packit 8f70b4
  switch (hval)
Packit 8f70b4
    {
Packit 8f70b4
      default:
Packit 8f70b4
        hval += asso_values[(unsigned char)str[9]];
Packit 8f70b4
      /*FALLTHROUGH*/
Packit 8f70b4
      case 9:
Packit 8f70b4
      case 8:
Packit 8f70b4
      case 7:
Packit 8f70b4
      case 6:
Packit 8f70b4
      case 5:
Packit 8f70b4
        break;
Packit 8f70b4
    }
Packit 8f70b4
  return hval;
Packit 8f70b4
}
Packit 8f70b4
Packit 8f70b4
struct stringpool_t
Packit 8f70b4
  {
Packit 8f70b4
    char stringpool_str5[sizeof("ASCII")];
Packit 8f70b4
    char stringpool_str6[sizeof("CP1251")];
Packit 8f70b4
    char stringpool_str7[sizeof("$   abc")];
Packit 8f70b4
    char stringpool_str10[sizeof("ISO-8859-1")];
Packit 8f70b4
    char stringpool_str11[sizeof("ISO-8859-15")];
Packit 8f70b4
    char stringpool_str12[sizeof("ISO-8859-9")];
Packit 8f70b4
    char stringpool_str13[sizeof("ISO-8859-8")];
Packit 8f70b4
    char stringpool_str14[sizeof("ISO-8859-7")];
Packit 8f70b4
    char stringpool_str15[sizeof("ISO-8859-6")];
Packit 8f70b4
    char stringpool_str16[sizeof("ISO-8859-5")];
Packit 8f70b4
    char stringpool_str17[sizeof("ISO-8859-4")];
Packit 8f70b4
    char stringpool_str18[sizeof("ISO-8859-3")];
Packit 8f70b4
    char stringpool_str19[sizeof("ISO-8859-2")];
Packit 8f70b4
  };
Packit 8f70b4
static const struct stringpool_t stringpool_contents =
Packit 8f70b4
  {
Packit 8f70b4
    "ASCII",
Packit 8f70b4
    "CP1251",
Packit 8f70b4
    "$   abc",
Packit 8f70b4
    "ISO-8859-1",
Packit 8f70b4
    "ISO-8859-15",
Packit 8f70b4
    "ISO-8859-9",
Packit 8f70b4
    "ISO-8859-8",
Packit 8f70b4
    "ISO-8859-7",
Packit 8f70b4
    "ISO-8859-6",
Packit 8f70b4
    "ISO-8859-5",
Packit 8f70b4
    "ISO-8859-4",
Packit 8f70b4
    "ISO-8859-3",
Packit 8f70b4
    "ISO-8859-2"
Packit 8f70b4
  };
Packit 8f70b4
#define stringpool ((const char *) &stringpool_contents)
Packit 8f70b4
Packit 8f70b4
static const struct mapping mappings[] =
Packit 8f70b4
  {
Packit 8f70b4
    {-1}, {-1}, {-1}, {-1}, {-1},
Packit 8f70b4
#line 19 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str5, "646"},
Packit 8f70b4
#line 30 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str6, "ansi-1251"},
Packit 8f70b4
#line 18 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str7},
Packit 8f70b4
    {-1}, {-1},
Packit 8f70b4
#line 20 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str10, "ISO8859-1"},
Packit 8f70b4
#line 29 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str11, "ISO8859-15"},
Packit 8f70b4
#line 28 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str12, "ISO8859-9"},
Packit 8f70b4
#line 27 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str13, "ISO8859-8"},
Packit 8f70b4
#line 26 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str14, "ISO8859-7"},
Packit 8f70b4
#line 25 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str15, "ISO8859-6"},
Packit 8f70b4
#line 24 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str16, "ISO8859-5"},
Packit 8f70b4
#line 23 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str17, "ISO8859-4"},
Packit 8f70b4
#line 22 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str18, "ISO8859-3"},
Packit 8f70b4
#line 21 "./iconv_open-solaris.gperf"
Packit 8f70b4
    {(int)(long)&((struct stringpool_t *)0)->stringpool_str19, "ISO8859-2"}
Packit 8f70b4
  };
Packit 8f70b4
Packit 8f70b4
#ifdef __GNUC__
Packit 8f70b4
__inline
Packit 8f70b4
#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
Packit 8f70b4
__attribute__ ((__gnu_inline__))
Packit 8f70b4
#endif
Packit 8f70b4
#endif
Packit 8f70b4
const struct mapping *
Packit 8f70b4
mapping_lookup (register const char *str, register unsigned int len)
Packit 8f70b4
{
Packit 8f70b4
  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
Packit 8f70b4
    {
Packit 8f70b4
      register int key = mapping_hash (str, len);
Packit 8f70b4
Packit 8f70b4
      if (key <= MAX_HASH_VALUE && key >= 0)
Packit 8f70b4
        {
Packit 8f70b4
          register int o = mappings[key].standard_name;
Packit 8f70b4
          if (o >= 0)
Packit 8f70b4
            {
Packit 8f70b4
              register const char *s = o + stringpool;
Packit 8f70b4
Packit 8f70b4
              if (*str == *s && !strcmp (str + 1, s + 1))
Packit 8f70b4
                return &mappings[key];
Packit 8f70b4
            }
Packit 8f70b4
        }
Packit 8f70b4
    }
Packit 8f70b4
  return 0;
Packit 8f70b4
}