blob: 5c73d51339d81b30e88cdd1010d65f273f2e62e1 [file] [log] [blame]
Adrian Bunk9649ef82008-01-23 01:54:39 +02001/* ANSI-C code produced by gperf version 3.0.3 */
Roman Zippel7a884882005-11-08 21:34:51 -08002/* Command-line: gperf */
3/* Computed positions: -k'1,3' */
4
5#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
6 && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
7 && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
8 && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
9 && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
10 && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
11 && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
12 && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
13 && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
14 && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
15 && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
16 && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
17 && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
18 && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
19 && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
20 && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
21 && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
22 && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
23 && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
24 && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
25 && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
26 && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
27 && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
28/* The character set is not based on ISO-646. */
29#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
30#endif
31
32struct kconf_id;
Sam Ravnborg14f31562007-09-26 20:15:39 +020033/* maximum key range = 47, duplicates = 0 */
Roman Zippel7a884882005-11-08 21:34:51 -080034
35#ifdef __GNUC__
36__inline
37#else
38#ifdef __cplusplus
39inline
40#endif
41#endif
42static unsigned int
43kconf_id_hash (register const char *str, register unsigned int len)
44{
45 static unsigned char asso_values[] =
46 {
Sam Ravnborg14f31562007-09-26 20:15:39 +020047 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
48 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
49 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
50 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
51 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
52 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
53 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
54 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
55 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
Adrian Bunk9649ef82008-01-23 01:54:39 +020056 49, 49, 49, 49, 49, 49, 49, 49, 11, 5,
Sam Ravnborg14f31562007-09-26 20:15:39 +020057 0, 0, 5, 49, 5, 20, 49, 49, 5, 20,
Roman Zippel93449082008-01-14 04:50:54 +010058 5, 0, 30, 49, 0, 15, 0, 10, 0, 49,
Adrian Bunk9649ef82008-01-23 01:54:39 +020059 25, 49, 49, 49, 49, 49, 49, 49, 49, 49,
Sam Ravnborg14f31562007-09-26 20:15:39 +020060 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
61 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
62 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
63 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
64 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
65 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
66 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
67 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
68 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
69 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
70 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
71 49, 49, 49, 49, 49, 49, 49, 49, 49, 49,
72 49, 49, 49, 49, 49, 49
Roman Zippel7a884882005-11-08 21:34:51 -080073 };
74 register int hval = len;
75
76 switch (hval)
77 {
78 default:
79 hval += asso_values[(unsigned char)str[2]];
80 /*FALLTHROUGH*/
81 case 2:
82 case 1:
83 hval += asso_values[(unsigned char)str[0]];
84 break;
85 }
86 return hval;
87}
88
89struct kconf_id_strings_t
90 {
Roman Zippelf6a88aa2006-06-08 22:12:44 -070091 char kconf_id_strings_str2[sizeof("on")];
Roman Zippel93449082008-01-14 04:50:54 +010092 char kconf_id_strings_str3[sizeof("env")];
Sam Ravnborg14f31562007-09-26 20:15:39 +020093 char kconf_id_strings_str5[sizeof("endif")];
94 char kconf_id_strings_str6[sizeof("option")];
95 char kconf_id_strings_str7[sizeof("endmenu")];
96 char kconf_id_strings_str8[sizeof("optional")];
97 char kconf_id_strings_str9[sizeof("endchoice")];
Roman Zippel7a884882005-11-08 21:34:51 -080098 char kconf_id_strings_str10[sizeof("range")];
Sam Ravnborg14f31562007-09-26 20:15:39 +020099 char kconf_id_strings_str11[sizeof("choice")];
100 char kconf_id_strings_str12[sizeof("default")];
101 char kconf_id_strings_str13[sizeof("def_bool")];
102 char kconf_id_strings_str14[sizeof("help")];
Adrian Bunk9649ef82008-01-23 01:54:39 +0200103 char kconf_id_strings_str15[sizeof("bool")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200104 char kconf_id_strings_str16[sizeof("config")];
105 char kconf_id_strings_str17[sizeof("def_tristate")];
Adrian Bunk9649ef82008-01-23 01:54:39 +0200106 char kconf_id_strings_str18[sizeof("boolean")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200107 char kconf_id_strings_str19[sizeof("defconfig_list")];
108 char kconf_id_strings_str21[sizeof("string")];
109 char kconf_id_strings_str22[sizeof("if")];
110 char kconf_id_strings_str23[sizeof("int")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200111 char kconf_id_strings_str26[sizeof("select")];
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700112 char kconf_id_strings_str27[sizeof("modules")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200113 char kconf_id_strings_str28[sizeof("tristate")];
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700114 char kconf_id_strings_str29[sizeof("menu")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200115 char kconf_id_strings_str31[sizeof("source")];
116 char kconf_id_strings_str32[sizeof("comment")];
Adrian Bunk9649ef82008-01-23 01:54:39 +0200117 char kconf_id_strings_str33[sizeof("hex")];
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700118 char kconf_id_strings_str35[sizeof("menuconfig")];
Sam Ravnborg14f31562007-09-26 20:15:39 +0200119 char kconf_id_strings_str36[sizeof("prompt")];
120 char kconf_id_strings_str37[sizeof("depends")];
121 char kconf_id_strings_str48[sizeof("mainmenu")];
Roman Zippel7a884882005-11-08 21:34:51 -0800122 };
123static struct kconf_id_strings_t kconf_id_strings_contents =
124 {
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700125 "on",
Roman Zippel93449082008-01-14 04:50:54 +0100126 "env",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200127 "endif",
128 "option",
129 "endmenu",
130 "optional",
131 "endchoice",
132 "range",
133 "choice",
Roman Zippel7a884882005-11-08 21:34:51 -0800134 "default",
135 "def_bool",
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700136 "help",
Adrian Bunk9649ef82008-01-23 01:54:39 +0200137 "bool",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200138 "config",
139 "def_tristate",
Adrian Bunk9649ef82008-01-23 01:54:39 +0200140 "boolean",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200141 "defconfig_list",
142 "string",
143 "if",
144 "int",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200145 "select",
146 "modules",
147 "tristate",
148 "menu",
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700149 "source",
150 "comment",
Adrian Bunk9649ef82008-01-23 01:54:39 +0200151 "hex",
Sam Ravnborg14f31562007-09-26 20:15:39 +0200152 "menuconfig",
153 "prompt",
154 "depends",
155 "mainmenu"
Roman Zippel7a884882005-11-08 21:34:51 -0800156 };
157#define kconf_id_strings ((const char *) &kconf_id_strings_contents)
158#ifdef __GNUC__
159__inline
Adrian Bunk9649ef82008-01-23 01:54:39 +0200160#ifdef __GNUC_STDC_INLINE__
161__attribute__ ((__gnu_inline__))
162#endif
Roman Zippel7a884882005-11-08 21:34:51 -0800163#endif
164struct kconf_id *
165kconf_id_lookup (register const char *str, register unsigned int len)
166{
167 enum
168 {
Adrian Bunk9649ef82008-01-23 01:54:39 +0200169 TOTAL_KEYWORDS = 31,
Roman Zippel7a884882005-11-08 21:34:51 -0800170 MIN_WORD_LENGTH = 2,
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700171 MAX_WORD_LENGTH = 14,
Roman Zippel7a884882005-11-08 21:34:51 -0800172 MIN_HASH_VALUE = 2,
Sam Ravnborg14f31562007-09-26 20:15:39 +0200173 MAX_HASH_VALUE = 48
Roman Zippel7a884882005-11-08 21:34:51 -0800174 };
175
176 static struct kconf_id wordlist[] =
177 {
178 {-1}, {-1},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700179 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str2, T_ON, TF_PARAM},
Roman Zippel93449082008-01-14 04:50:54 +0100180 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str3, T_OPT_ENV, TF_OPTION},
181 {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200182 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str5, T_ENDIF, TF_COMMAND},
183 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str6, T_OPTION, TF_COMMAND},
184 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str7, T_ENDMENU, TF_COMMAND},
185 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str8, T_OPTIONAL, TF_COMMAND},
186 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str9, T_ENDCHOICE, TF_COMMAND},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700187 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str10, T_RANGE, TF_COMMAND},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200188 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str11, T_CHOICE, TF_COMMAND},
189 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str12, T_DEFAULT, TF_COMMAND, S_UNKNOWN},
190 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str13, T_DEFAULT, TF_COMMAND, S_BOOLEAN},
191 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str14, T_HELP, TF_COMMAND},
Adrian Bunk9649ef82008-01-23 01:54:39 +0200192 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str15, T_TYPE, TF_COMMAND, S_BOOLEAN},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200193 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str16, T_CONFIG, TF_COMMAND},
194 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str17, T_DEFAULT, TF_COMMAND, S_TRISTATE},
Adrian Bunk9649ef82008-01-23 01:54:39 +0200195 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str18, T_TYPE, TF_COMMAND, S_BOOLEAN},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200196 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str19, T_OPT_DEFCONFIG_LIST,TF_OPTION},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700197 {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200198 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str21, T_TYPE, TF_COMMAND, S_STRING},
199 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str22, T_IF, TF_COMMAND|TF_PARAM},
200 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str23, T_TYPE, TF_COMMAND, S_INT},
Roman Zippel93449082008-01-14 04:50:54 +0100201 {-1}, {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200202 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str26, T_SELECT, TF_COMMAND},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700203 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str27, T_OPT_MODULES, TF_OPTION},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200204 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str28, T_TYPE, TF_COMMAND, S_TRISTATE},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700205 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str29, T_MENU, TF_COMMAND},
206 {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200207 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str31, T_SOURCE, TF_COMMAND},
208 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str32, T_COMMENT, TF_COMMAND},
Adrian Bunk9649ef82008-01-23 01:54:39 +0200209 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str33, T_TYPE, TF_COMMAND, S_HEX},
210 {-1},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700211 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str35, T_MENUCONFIG, TF_COMMAND},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200212 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str36, T_PROMPT, TF_COMMAND},
213 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str37, T_DEPENDS, TF_COMMAND},
Adrian Bunk9649ef82008-01-23 01:54:39 +0200214 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
Roman Zippelf6a88aa2006-06-08 22:12:44 -0700215 {-1},
Sam Ravnborg14f31562007-09-26 20:15:39 +0200216 {(int)(long)&((struct kconf_id_strings_t *)0)->kconf_id_strings_str48, T_MAINMENU, TF_COMMAND}
Roman Zippel7a884882005-11-08 21:34:51 -0800217 };
218
219 if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
220 {
221 register int key = kconf_id_hash (str, len);
222
223 if (key <= MAX_HASH_VALUE && key >= 0)
224 {
225 register int o = wordlist[key].name;
226 if (o >= 0)
227 {
228 register const char *s = o + kconf_id_strings;
229
230 if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
231 return &wordlist[key];
232 }
233 }
234 }
235 return 0;
236}
237