comparison GEMBASSY-1.0.3/gsoap/src/init2.c @ 2:8947fca5f715 draft default tip

Uploaded
author ktnyt
date Fri, 26 Jun 2015 05:21:44 -0400
parents 84a17b3fad1f
children
comparison
equal deleted inserted replaced
1:84a17b3fad1f 2:8947fca5f715
1 /*
2 init2.c
3
4 Symbol table initialization.
5
6 gSOAP XML Web services tools
7 Copyright (C) 2000-2008, Robert van Engelen, Genivia Inc. All Rights Reserved.
8 This part of the software is released under one of the following licenses:
9 GPL or Genivia's license for commercial use.
10 --------------------------------------------------------------------------------
11 GPL license.
12
13 This program is free software; you can redistribute it and/or modify it under
14 the terms of the GNU General Public License as published by the Free Software
15 Foundation; either version 2 of the License, or (at your option) any later
16 version.
17
18 This program is distributed in the hope that it will be useful, but WITHOUT ANY
19 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
20 PARTICULAR PURPOSE. See the GNU General Public License for more details.
21
22 You should have received a copy of the GNU General Public License along with
23 this program; if not, write to the Free Software Foundation, Inc., 59 Temple
24 Place, Suite 330, Boston, MA 02111-1307 USA
25
26 Author contact information:
27 engelen@genivia.com / engelen@acm.org
28
29 This program is released under the GPL with the additional exemption that
30 compiling, linking, and/or using OpenSSL is allowed.
31 --------------------------------------------------------------------------------
32 A commercial use license is available from Genivia, Inc., contact@genivia.com
33 --------------------------------------------------------------------------------
34 */
35
36 #include "soapcpp2.h"
37
38 #ifdef HAVE_CONFIG_H
39 #include "soapcpp2_yacc.h"
40 #else
41 #include "soapcpp2_yacc.tab.h"
42 #endif
43
44 typedef struct Keyword
45 { char *s; /* name */
46 Token t; /* token */
47 } Keyword;
48
49 static Keyword keywords[] =
50 { { "asm", NONE },
51 { "auto", AUTO },
52 { "bool", BOOL },
53 { "break", BREAK },
54 { "case", CASE },
55 { "catch", NONE },
56 { "char", CHAR },
57 { "class", CLASS },
58 { "const", CONST },
59 { "const_cast", NONE },
60 { "continue", CONTINUE },
61 { "default", DEFAULT },
62 { "delete", NONE },
63 { "do", DO },
64 { "double", DOUBLE },
65 { "dynamic_cast", NONE },
66 { "else", ELSE },
67 { "enum", ENUM },
68 { "errno", NONE },
69 { "explicit", EXPLICIT },
70 { "export", NONE },
71 { "extern", EXTERN },
72 { "false", CFALSE },
73 { "float", FLOAT },
74 { "for", FOR },
75 { "friend", FRIEND },
76 { "goto", GOTO },
77 { "if", IF },
78 { "inline", INLINE },
79 { "int", INT },
80 { "int8_t", CHAR },
81 { "int16_t", SHORT },
82 { "int32_t", INT },
83 { "int64_t", LLONG },
84 { "long", LONG },
85 { "LONG64", LLONG },
86 { "mutable", NONE },
87 { "namespace", NAMESPACE },
88 { "new", NONE },
89 { "NULL", null },
90 { "operator", OPERATOR },
91 { "private", PRIVATE },
92 { "protected", PROTECTED },
93 { "public", PUBLIC },
94 { "register", REGISTER },
95 { "reinterpret_cast", NONE },
96 { "restrict", NONE },
97 { "return", RETURN },
98 { "short", SHORT },
99 { "signed", SIGNED },
100 { "size_t", SIZE },
101 { "sizeof", SIZEOF },
102 { "static", STATIC },
103 { "static_cast", NONE },
104 { "struct", STRUCT },
105 { "switch", SWITCH },
106 { "template", TEMPLATE },
107 { "this", NONE },
108 { "throw", NONE },
109 { "time_t", TIME },
110 { "true", CTRUE },
111 { "typedef", TYPEDEF },
112 { "typeid", NONE },
113 { "typename", TYPENAME },
114 { "uint8_t", UCHAR },
115 { "uint16_t", USHORT },
116 { "uint32_t", UINT },
117 { "uint64_t", ULLONG },
118 { "ULONG64", ULLONG },
119 { "union", UNION },
120 { "unsigned", UNSIGNED },
121 { "using", USING },
122 { "virtual", VIRTUAL },
123 { "void", VOID },
124 { "volatile", VOLATILE },
125 { "wchar_t", WCHAR },
126 { "while", WHILE },
127
128 { "operator!", NONE },
129 { "operator~", NONE },
130 { "operator=", NONE },
131 { "operator+=", NONE },
132 { "operator-=", NONE },
133 { "operator*=", NONE },
134 { "operator/=", NONE },
135 { "operator%=", NONE },
136 { "operator&=", NONE },
137 { "operator^=", NONE },
138 { "operator|=", NONE },
139 { "operator<<=", NONE },
140 { "operator>>=", NONE },
141 { "operator||", NONE },
142 { "operator&&", NONE },
143 { "operator|", NONE },
144 { "operator^", NONE },
145 { "operator&", NONE },
146 { "operator==", NONE },
147 { "operator!=", NONE },
148 { "operator<", NONE },
149 { "operator<=", NONE },
150 { "operator>", NONE },
151 { "operator>=", NONE },
152 { "operator<<", NONE },
153 { "operator>>", NONE },
154 { "operator+", NONE },
155 { "operator-", NONE },
156 { "operator*", NONE },
157 { "operator/", NONE },
158 { "operator%", NONE },
159 { "operator++", NONE },
160 { "operator--", NONE },
161 { "operator->", NONE },
162 { "operator[]", NONE },
163 { "operator()", NONE },
164
165 { "mustUnderstand", MUSTUNDERSTAND },
166
167 { "soap", ID },
168 { "SOAP_ENV__Header", ID },
169 { "dummy", ID },
170 { "soap_header", ID },
171
172 { "SOAP_ENV__Fault", ID },
173 { "SOAP_ENV__Code", ID },
174 { "SOAP_ENV__Subcode", ID },
175 { "SOAP_ENV__Reason", ID },
176 { "SOAP_ENV__Text", ID },
177 { "SOAP_ENV__Detail", ID },
178 { "SOAP_ENV__Value", ID },
179 { "SOAP_ENV__Node", ID },
180 { "SOAP_ENV__Role", ID },
181 { "faultcode", ID },
182 { "faultstring", ID },
183 { "faultactor", ID },
184 { "detail", ID },
185 { "__type", ID },
186 { "fault", ID },
187 { "__any", ID },
188
189 { "_QName", ID },
190 { "_XML", ID },
191 { "std::string", TYPE },
192 { "std::wstring", TYPE },
193
194 { "/*?*/", NONE },
195
196 { 0, 0 }
197 };
198
199 /*
200 init - initialize symbol table with predefined keywords
201 */
202 void init(void)
203 { struct Keyword *k;
204 for (k = keywords; k->s; k++)
205 install(k->s, k->t);
206 }