fix link errors on compilers with strict "extern" enforcement
[rofl0r-openbor.git] / stringswitch_impl_lcm_cmdtype.c
blob71de15607c9956be8f72c15eef361a0455e473b1
1 typedef enum {
2 stringswitch_enumerator_default_member_name(lcm_cmdtype),
3 stringswitch_enumerator_member_name(lcm_cmdtype, npc),
4 stringswitch_enumerator_member_name(lcm_cmdtype, none),
5 stringswitch_enumerator_member_name(lcm_cmdtype, item),
6 stringswitch_enumerator_member_name(lcm_cmdtype, trap),
7 stringswitch_enumerator_member_name(lcm_cmdtype, text),
8 stringswitch_enumerator_member_name(lcm_cmdtype, enemy),
9 stringswitch_enumerator_member_name(lcm_cmdtype, pshot),
10 stringswitch_enumerator_member_name(lcm_cmdtype, panel),
11 stringswitch_enumerator_member_name(lcm_cmdtype, player),
12 stringswitch_enumerator_member_name(lcm_cmdtype, steamer),
13 stringswitch_enumerator_member_name(lcm_cmdtype, obstacle),
14 stringswitch_enumerator_member_name(lcm_cmdtype, endlevel),
15 } stringswitch_enumerator_name(lcm_cmdtype);
17 static int stringswitch_enumerator_eval_func(lcm_cmdtype) (char* str, size_t l) {
18 switch(l) {
19 case 3:
20 if(str[0]!='n') goto main_default;
21 if(str[1]!='p') goto main_default;
22 if(str[2]!='c') goto main_default;
23 return stringswitch_enumerator_member_name(lcm_cmdtype, npc);
24 case 4:
25 switch(str[0]) {
26 case 'n':
27 if(str[1]!='o') goto main_default;
28 if(str[2]!='n') goto main_default;
29 if(str[3]!='e') goto main_default;
30 return stringswitch_enumerator_member_name(lcm_cmdtype, none);
31 case 'i':
32 if(str[1]!='t') goto main_default;
33 if(str[2]!='e') goto main_default;
34 if(str[3]!='m') goto main_default;
35 return stringswitch_enumerator_member_name(lcm_cmdtype, item);
36 case 't':
37 switch(str[1]) {
38 case 'r':
39 if(str[2]!='a') goto main_default;
40 if(str[3]!='p') goto main_default;
41 return stringswitch_enumerator_member_name(lcm_cmdtype, trap);
42 case 'e':
43 if(str[2]!='x') goto main_default;
44 if(str[3]!='t') goto main_default;
45 return stringswitch_enumerator_member_name(lcm_cmdtype, text);
46 default: goto main_default;
48 default: goto main_default;
50 case 5:
51 switch(str[0]) {
52 case 'e':
53 if(str[1]!='n') goto main_default;
54 if(str[2]!='e') goto main_default;
55 if(str[3]!='m') goto main_default;
56 if(str[4]!='y') goto main_default;
57 return stringswitch_enumerator_member_name(lcm_cmdtype, enemy);
58 case 'p':
59 switch(str[1]) {
60 case 's':
61 if(str[2]!='h') goto main_default;
62 if(str[3]!='o') goto main_default;
63 if(str[4]!='t') goto main_default;
64 return stringswitch_enumerator_member_name(lcm_cmdtype, pshot);
65 case 'a':
66 if(str[2]!='n') goto main_default;
67 if(str[3]!='e') goto main_default;
68 if(str[4]!='l') goto main_default;
69 return stringswitch_enumerator_member_name(lcm_cmdtype, panel);
70 default: goto main_default;
72 default: goto main_default;
74 case 6:
75 if(str[0]!='p') goto main_default;
76 if(str[1]!='l') goto main_default;
77 if(str[2]!='a') goto main_default;
78 if(str[3]!='y') goto main_default;
79 if(str[4]!='e') goto main_default;
80 if(str[5]!='r') goto main_default;
81 return stringswitch_enumerator_member_name(lcm_cmdtype, player);
82 case 7:
83 if(str[0]!='s') goto main_default;
84 if(str[1]!='t') goto main_default;
85 if(str[2]!='e') goto main_default;
86 if(str[3]!='a') goto main_default;
87 if(str[4]!='m') goto main_default;
88 if(str[5]!='e') goto main_default;
89 if(str[6]!='r') goto main_default;
90 return stringswitch_enumerator_member_name(lcm_cmdtype, steamer);
91 case 8:
92 switch(str[0]) {
93 case 'o':
94 if(str[1]!='b') goto main_default;
95 if(str[2]!='s') goto main_default;
96 if(str[3]!='t') goto main_default;
97 if(str[4]!='a') goto main_default;
98 if(str[5]!='c') goto main_default;
99 if(str[6]!='l') goto main_default;
100 if(str[7]!='e') goto main_default;
101 return stringswitch_enumerator_member_name(lcm_cmdtype, obstacle);
102 case 'e':
103 if(str[1]!='n') goto main_default;
104 if(str[2]!='d') goto main_default;
105 if(str[3]!='l') goto main_default;
106 if(str[4]!='e') goto main_default;
107 if(str[5]!='v') goto main_default;
108 if(str[6]!='e') goto main_default;
109 if(str[7]!='l') goto main_default;
110 return stringswitch_enumerator_member_name(lcm_cmdtype, endlevel);
111 default: goto main_default;
113 default:
114 main_default:
115 return stringswitch_enumerator_default_member_name(lcm_cmdtype);