]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.databoard/cpp/DataBoardTest/libantlr3c-3.2/include/antlr3defs.h
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.databoard / cpp / DataBoardTest / libantlr3c-3.2 / include / antlr3defs.h
1 /** \file\r
2  * Basic type and constant definitions for ANTLR3 Runtime.\r
3  */\r
4 #ifndef _ANTLR3DEFS_H\r
5 #define _ANTLR3DEFS_H\r
6 \r
7 // [The "BSD licence"]\r
8 // Copyright (c) 2005-2009 Jim Idle, Temporal Wave LLC\r
9 // http://www.temporal-wave.com\r
10 // http://www.linkedin.com/in/jimidle\r
11 //\r
12 // All rights reserved.\r
13 //\r
14 // Redistribution and use in source and binary forms, with or without\r
15 // modification, are permitted provided that the following conditions\r
16 // are met:\r
17 // 1. Redistributions of source code must retain the above copyright\r
18 //    notice, this list of conditions and the following disclaimer.\r
19 // 2. Redistributions in binary form must reproduce the above copyright\r
20 //    notice, this list of conditions and the following disclaimer in the\r
21 //    documentation and/or other materials provided with the distribution.\r
22 // 3. The name of the author may not be used to endorse or promote products\r
23 //    derived from this software without specific prior written permission.\r
24 //\r
25 // THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR\r
26 // IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\r
27 // OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.\r
28 // IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,\r
29 // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT\r
30 // NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\r
31 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\r
32 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\r
33 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF\r
34 // THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
35 \r
36 /* Following are for generated code, they are not referenced internally!!!\r
37  */\r
38 #if !defined(ANTLR3_HUGE) && !defined(ANTLR3_AVERAGE) && !defined(ANTLR3_SMALL)\r
39 #define ANTLR3_AVERAGE\r
40 #endif\r
41 \r
42 #ifdef  ANTLR3_HUGE\r
43 #ifndef ANTLR3_SIZE_HINT\r
44 #define ANTLR3_SIZE_HINT    2049\r
45 #endif\r
46 #ifndef ANTLR3_LIST_SIZE_HINT\r
47 #define ANTLR3_LIST_SIZE_HINT 127\r
48 #endif\r
49 #endif\r
50 \r
51 #ifdef  ANTLR3_AVERAGE\r
52 #ifndef ANTLR3_SIZE_HINT\r
53 #define ANTLR3_SIZE_HINT    1025\r
54 #define ANTLR3_LIST_SIZE_HINT 63\r
55 #endif\r
56 #endif\r
57 \r
58 #ifdef  ANTLR3_SMALL\r
59 #ifndef ANTLR3_SIZE_HINT\r
60 #define ANTLR3_SIZE_HINT    211\r
61 #define ANTLR3_LIST_SIZE_HINT 31\r
62 #endif\r
63 #endif\r
64 \r
65 /* Common definitions come first\r
66  */\r
67 #include    <antlr3errors.h>\r
68 \r
69 #define ANTLR3_ENCODING_LATIN1  0\r
70 #define ANTLR3_ENCODING_UCS2    1\r
71 #define ANTLR3_ENCODING_UTF8    2\r
72 #define ANTLR3_ENCODING_UTF32   3\r
73 \r
74 /* Work out what operating system/compiler this is. We just do this once\r
75  * here and use an internal symbol after this.\r
76  */\r
77 #ifdef  _WIN64\r
78 \r
79 # ifndef        ANTLR3_WINDOWS\r
80 #   define      ANTLR3_WINDOWS\r
81 # endif\r
82 # define        ANTLR3_WIN64\r
83 # define        ANTLR3_USE_64BIT\r
84 \r
85 #else\r
86 \r
87 #ifdef  _WIN32\r
88 # ifndef        ANTLR3_WINDOWS\r
89 #  define       ANTLR3_WINDOWS\r
90 # endif\r
91 \r
92 #define ANTLR3_WIN32\r
93 #endif\r
94 \r
95 #endif\r
96 \r
97 #ifdef  ANTLR3_WINDOWS \r
98 \r
99 #ifndef WIN32_LEAN_AND_MEAN\r
100 #define WIN32_LEAN_AND_MEAN\r
101 #endif\r
102 \r
103 /* Allow VC 8 (vs2005) and above to use 'secure' versions of various functions such as sprintf\r
104  */\r
105 #ifndef _CRT_SECURE_NO_DEPRECATE \r
106 #define _CRT_SECURE_NO_DEPRECATE \r
107 #endif\r
108 \r
109 #include    <windows.h>\r
110 #include        <stdlib.h>\r
111 #include        <winsock.h>\r
112 #include    <stdio.h>\r
113 #include    <sys/types.h>\r
114 #include    <sys/stat.h>\r
115 #include    <stdarg.h>\r
116 \r
117 #define ANTLR3_API  __declspec(dllexport)\r
118 #define ANTLR3_CDECL __cdecl\r
119 #define ANTLR3_FASTCALL __fastcall\r
120 \r
121 #ifdef __cplusplus\r
122 extern "C" {\r
123 #endif\r
124 \r
125 #ifndef __MINGW32__\r
126 // Standard Windows types\r
127 //\r
128 typedef INT32   ANTLR3_CHAR,    *pANTLR3_CHAR;\r
129 typedef UINT32  ANTLR3_UCHAR,   *pANTLR3_UCHAR;\r
130 \r
131 typedef INT8    ANTLR3_INT8,    *pANTLR3_INT8;\r
132 typedef INT16   ANTLR3_INT16,   *pANTLR3_INT16;\r
133 typedef INT32   ANTLR3_INT32,   *pANTLR3_INT32;\r
134 typedef INT64   ANTLR3_INT64,   *pANTLR3_INT64;\r
135 typedef UINT8   ANTLR3_UINT8,   *pANTLR3_UINT8;\r
136 typedef UINT16  ANTLR3_UINT16,  *pANTLR3_UINT16;\r
137 typedef UINT32  ANTLR3_UINT32,  *pANTLR3_UINT32;\r
138 typedef UINT64  ANTLR3_UINT64,  *pANTLR3_UINT64;\r
139 typedef UINT64  ANTLR3_BITWORD, *pANTLR3_BITWORD;\r
140 typedef UINT8   ANTLR3_BOOLEAN, *pANTLR3_BOOLEAN;\r
141 \r
142 #else\r
143 // Mingw uses stdint.h and fails to define standard Microsoft typedefs\r
144 // such as UINT16, hence we must use stdint.h for Mingw.\r
145 //\r
146 #include <stdint.h>\r
147 typedef int32_t             ANTLR3_CHAR,    *pANTLR3_CHAR;\r
148 typedef uint32_t            ANTLR3_UCHAR,   *pANTLR3_UCHAR;\r
149 \r
150 typedef int8_t              ANTLR3_INT8,    *pANTLR3_INT8;\r
151 typedef int16_t             ANTLR3_INT16,   *pANTLR3_INT16;\r
152 typedef int32_t             ANTLR3_INT32,   *pANTLR3_INT32;\r
153 typedef int64_t             ANTLR3_INT64,   *pANTLR3_INT64;\r
154 \r
155 typedef uint8_t         ANTLR3_UINT8,   *pANTLR3_UINT8;\r
156 typedef uint16_t        ANTLR3_UINT16,  *pANTLR3_UINT16;\r
157 typedef uint32_t            ANTLR3_UINT32,  *pANTLR3_UINT32;\r
158 typedef uint64_t            ANTLR3_UINT64,  *pANTLR3_UINT64;\r
159 typedef uint64_t            ANTLR3_BITWORD, *pANTLR3_BITWORD;\r
160 \r
161 typedef uint8_t                 ANTLR3_BOOLEAN, *pANTLR3_BOOLEAN;\r
162 \r
163 #endif\r
164 \r
165 \r
166 \r
167 #define ANTLR3_UINT64_LIT(lit)      lit##ULL\r
168 \r
169 #define ANTLR3_INLINE   __inline\r
170 \r
171 typedef FILE *      ANTLR3_FDSC;\r
172 typedef struct stat ANTLR3_FSTAT_STRUCT;\r
173 \r
174 #ifdef  ANTLR3_USE_64BIT\r
175 #define ANTLR3_FUNC_PTR(ptr)            (void *)((ANTLR3_UINT64)(ptr))\r
176 #define ANTLR3_UINT64_CAST(ptr)         (ANTLR3_UINT64)(ptr))\r
177 #define ANTLR3_UINT32_CAST(ptr)         (ANTLR3_UINT32)((ANTLR3_UINT64)(ptr))\r
178 typedef ANTLR3_INT64                            ANTLR3_MARKER;                  \r
179 typedef ANTLR3_UINT64                           ANTLR3_INTKEY;\r
180 #else\r
181 #define ANTLR3_FUNC_PTR(ptr)            (void *)((ANTLR3_UINT32)(ptr))\r
182 #define ANTLR3_UINT64_CAST(ptr)   (ANTLR3_UINT64)((ANTLR3_UINT32)(ptr))\r
183 #define ANTLR3_UINT32_CAST(ptr)   (ANTLR3_UINT32)(ptr)\r
184 typedef ANTLR3_INT32                            ANTLR3_MARKER;\r
185 typedef ANTLR3_UINT32                           ANTLR3_INTKEY;\r
186 #endif\r
187 \r
188 #ifdef  ANTLR3_WIN32\r
189 #endif\r
190 \r
191 #ifdef  ANTLR3_WIN64\r
192 #endif\r
193 \r
194 \r
195 typedef int                             ANTLR3_SALENT;                                                          // Type used for size of accept structure\r
196 typedef struct sockaddr_in      ANTLR3_SOCKADDRT, * pANTLR3_SOCKADDRT;  // Type used for socket address declaration\r
197 typedef struct sockaddr         ANTLR3_SOCKADDRC, * pANTLR3_SOCKADDRC;  // Type used for cast on accept()\r
198 \r
199 #define ANTLR3_CLOSESOCKET      closesocket\r
200 \r
201 #ifdef __cplusplus\r
202 }\r
203 #endif\r
204 \r
205 /* Warnings that are over-zealous such as complaining about strdup, we\r
206  * can turn off.\r
207  */\r
208 \r
209 /* Don't complain about "deprecated" functions such as strdup\r
210  */\r
211 #pragma warning( disable : 4996 )\r
212 \r
213 #else\r
214 \r
215 /* Include configure generated header file\r
216  */\r
217 #include        <antlr3config.h>\r
218 \r
219 #include <stdio.h>\r
220 \r
221 #if HAVE_STDINT_H\r
222 # include <stdint.h>\r
223 #endif\r
224 \r
225 #if HAVE_SYS_TYPES_H\r
226 # include <sys/types.h>\r
227 #endif\r
228 \r
229 #if HAVE_SYS_STAT_H\r
230 # include <sys/stat.h>\r
231 #endif\r
232 \r
233 #if STDC_HEADERS\r
234 # include   <stdlib.h>\r
235 # include   <stddef.h>\r
236 # include   <stdarg.h>\r
237 #else\r
238 # if HAVE_STDLIB_H\r
239 #  include  <stdlib.h>\r
240 # endif\r
241 # if HAVE_STDARG_H\r
242 #  include  <stdarg.h>\r
243 # endif\r
244 #endif\r
245 \r
246 #if HAVE_STRING_H\r
247 # if !STDC_HEADERS && HAVE_MEMORY_H\r
248 #  include <memory.h>\r
249 # endif\r
250 # include <string.h>\r
251 #endif\r
252 \r
253 #if HAVE_STRINGS_H\r
254 # include <strings.h>\r
255 #endif\r
256 \r
257 #if HAVE_INTTYPES_H\r
258 # include <inttypes.h>\r
259 #endif\r
260 \r
261 #if HAVE_UNISTD_H\r
262 # include <unistd.h>\r
263 #endif\r
264 \r
265 #ifdef HAVE_NETINET_IN_H\r
266 #include        <netinet/in.h>\r
267 #endif\r
268 \r
269 #ifdef HAVE_SOCKET_H\r
270 # include       <socket.h>\r
271 #else\r
272 # if HAVE_SYS_SOCKET_H\r
273 #  include      <sys/socket.h>\r
274 # endif\r
275 #endif\r
276 \r
277 #ifdef HAVE_NETINET_TCP_H\r
278 #include        <netinet/tcp.h>\r
279 #endif\r
280 \r
281 #ifdef HAVE_ARPA_NAMESER_H\r
282 #include <arpa/nameser.h> /* DNS HEADER struct */\r
283 #endif\r
284 \r
285 #ifdef HAVE_NETDB_H\r
286 #include <netdb.h>\r
287 #endif\r
288 \r
289 \r
290 #ifdef HAVE_SYS_RESOLVE_H\r
291 #include        <sys/resolv.h>\r
292 #endif\r
293 \r
294 #ifdef HAVE_RESOLVE_H\r
295 #include        <resolv.h>\r
296 #endif\r
297 \r
298 \r
299 #ifdef  HAVE_MALLOC_H\r
300 # include    <malloc.h>\r
301 #else\r
302 # ifdef HAVE_SYS_MALLOC_H\r
303 #  include    <sys/malloc.h>\r
304 # endif\r
305 #endif\r
306 \r
307 #ifdef  HAVE_CTYPE_H\r
308 # include   <ctype.h>\r
309 #endif\r
310 \r
311 /* Some platforms define a macro, index() in string.h. AIX is\r
312  * one of these for instance. We must get rid of that definition\r
313  * as we use ->index all over the place. defining macros like this in system header\r
314  * files is a really bad idea, but I doubt that IBM will listen to me ;-)\r
315  */\r
316 #ifdef  index\r
317 #undef  index\r
318 #endif\r
319 \r
320 #define _stat   stat\r
321 \r
322 // SOCKET not defined on Unix\r
323 // \r
324 typedef int                             SOCKET;\r
325 \r
326 #define ANTLR3_API\r
327 #define ANTLR3_CDECL\r
328 #define ANTLR3_FASTCALL\r
329 \r
330 #ifdef  __hpux\r
331 \r
332         // HPUX is always different usually for no good reason. Tru64 should have kicked it\r
333         // into touch and everyone knows it ;-)\r
334         //\r
335  typedef struct sockaddr_in     ANTLR3_SOCKADDRT, * pANTLR3_SOCKADDRT;  // Type used for socket address declaration\r
336  typedef void *                         pANTLR3_SOCKADDRC;                                              // Type used for cast on accept()\r
337  typedef int                            ANTLR3_SALENT;\r
338 \r
339 #else\r
340 \r
341 # if defined(_AIX) || __GNUC__ > 3 \r
342 \r
343    typedef      socklen_t       ANTLR3_SALENT;\r
344 \r
345 # else\r
346 \r
347    typedef      size_t          ANTLR3_SALENT;\r
348 \r
349 # endif\r
350 \r
351    typedef struct sockaddr_in     ANTLR3_SOCKADDRT, * pANTLR3_SOCKADDRT;        // Type used for socket address declaration\r
352    typedef struct sockaddr              * pANTLR3_SOCKADDRC;                                    // Type used for cast on accept()\r
353 \r
354 #endif\r
355 \r
356 #define INVALID_SOCKET ((SOCKET)-1)\r
357 #define ANTLR3_CLOSESOCKET      close\r
358 \r
359 #ifdef __cplusplus\r
360 extern "C" {\r
361 #endif\r
362 \r
363 /* Inherit type definitions for autoconf\r
364  */\r
365 typedef int32_t             ANTLR3_CHAR,    *pANTLR3_CHAR;\r
366 typedef uint32_t            ANTLR3_UCHAR,   *pANTLR3_UCHAR;\r
367 \r
368 typedef int8_t              ANTLR3_INT8,    *pANTLR3_INT8;\r
369 typedef int16_t             ANTLR3_INT16,   *pANTLR3_INT16;\r
370 typedef int32_t             ANTLR3_INT32,   *pANTLR3_INT32;\r
371 typedef int64_t             ANTLR3_INT64,   *pANTLR3_INT64;\r
372 \r
373 typedef uint8_t             ANTLR3_UINT8,   *pANTLR3_UINT8;\r
374 typedef uint16_t            ANTLR3_UINT16,  *pANTLR3_UINT16;\r
375 typedef uint32_t            ANTLR3_UINT32,  *pANTLR3_UINT32;\r
376 typedef uint64_t            ANTLR3_UINT64,  *pANTLR3_UINT64;\r
377 typedef uint64_t            ANTLR3_BITWORD, *pANTLR3_BITWORD;\r
378 \r
379 typedef uint32_t            ANTLR3_BOOLEAN, *pANTLR3_BOOLEAN;\r
380 \r
381 #define ANTLR3_INLINE   inline\r
382 #define ANTLR3_API\r
383 \r
384 typedef FILE *      ANTLR3_FDSC;\r
385 typedef struct stat ANTLR3_FSTAT_STRUCT;\r
386 \r
387 #ifdef  ANTLR3_USE_64BIT\r
388 #define ANTLR3_FUNC_PTR(ptr)            (void *)((ANTLR3_UINT64)(ptr))\r
389 #define ANTLR3_UINT64_CAST(ptr)         (ANTLR3_UINT64)(ptr))\r
390 #define ANTLR3_UINT32_CAST(ptr)         (ANTLR3_UINT32)((ANTLR3_UINT64)(ptr))\r
391 typedef ANTLR3_INT64                            ANTLR3_MARKER;\r
392 typedef ANTLR3_UINT64                           ANTLR3_INTKEY;\r
393 #else\r
394 #define ANTLR3_FUNC_PTR(ptr)            (void *)((ANTLR3_UINT32)(ptr))\r
395 #define ANTLR3_UINT64_CAST(ptr)   (ANTLR3_UINT64)((ANTLR3_UINT32)(ptr))\r
396 #define ANTLR3_UINT32_CAST(ptr)   (ANTLR3_UINT32)(ptr)\r
397 typedef ANTLR3_INT32                            ANTLR3_MARKER;\r
398 typedef ANTLR3_UINT32                           ANTLR3_INTKEY;\r
399 #endif\r
400 #define ANTLR3_UINT64_LIT(lit)      lit##ULL\r
401 \r
402 #ifdef __cplusplus\r
403 }\r
404 #endif\r
405 \r
406 #endif\r
407 \r
408 #ifdef ANTLR3_USE_64BIT\r
409 #define ANTLR3_TRIE_DEPTH 63\r
410 #else\r
411 #define ANTLR3_TRIE_DEPTH 31\r
412 #endif\r
413 /* Pre declare the typedefs for all the interfaces, then \r
414  * they can be inter-dependant and we will let the linker\r
415  * sort it out for us.\r
416  */\r
417 #include    <antlr3interfaces.h>\r
418 \r
419 // Include the unicode.org conversion library header.\r
420 //\r
421 #include        <antlr3convertutf.h>\r
422 \r
423 /* Prototypes\r
424  */\r
425 #ifndef ANTLR3_MALLOC\r
426 /// Default definition of ANTLR3_MALLOC. You can override this before including\r
427 /// antlr3.h if you wish to use your own implementation.\r
428 ///\r
429 #define ANTLR3_MALLOC(request)                                  malloc  ((size_t)(request))\r
430 #endif\r
431 \r
432 #ifndef ANTLR3_CALLOC\r
433 /// Default definition of ANTLR3_CALLOC. You can override this before including\r
434 /// antlr3.h if you wish to use your own implementation.\r
435 ///\r
436 #define ANTLR3_CALLOC(numEl, elSize)                    calloc  (numEl, (size_t)(elSize))\r
437 #endif\r
438 \r
439 #ifndef ANTLR3_REALLOC\r
440 /// Default definition of ANTLR3_REALLOC. You can override this before including\r
441 /// antlr3.h if you wish to use your own implementation.\r
442 ///\r
443 #define ANTLR3_REALLOC(current, request)                realloc ((void *)(current), (size_t)(request))\r
444 #endif\r
445 #ifndef ANTLR3_FREE\r
446 /// Default definition of ANTLR3_FREE. You can override this before including\r
447 /// antlr3.h if you wish to use your own implementation.\r
448 ///\r
449 #define ANTLR3_FREE(ptr)                                                free    ((void *)(ptr))\r
450 #endif\r
451 #ifndef ANTLR3_FREE_FUNC                                                \r
452 /// Default definition of ANTLR3_FREE_FUNC                                              . You can override this before including\r
453 /// antlr3.h if you wish to use your own implementation.\r
454 ///\r
455 #define ANTLR3_FREE_FUNC                                                free\r
456 #endif\r
457 #ifndef ANTLR3_STRDUP\r
458 /// Default definition of ANTLR3_STRDUP. You can override this before including\r
459 /// antlr3.h if you wish to use your own implementation.\r
460 ///\r
461 #define ANTLR3_STRDUP(instr)                                    (pANTLR3_UINT8)(strdup  ((const char *)(instr)))\r
462 #endif\r
463 #ifndef ANTLR3_MEMCPY\r
464 /// Default definition of ANTLR3_MEMCPY. You can override this before including\r
465 /// antlr3.h if you wish to use your own implementation.\r
466 ///\r
467 #define ANTLR3_MEMCPY(target, source, size)     memcpy((void *)(target), (const void *)(source), (size_t)(size))\r
468 #endif\r
469 #ifndef ANTLR3_MEMMOVE\r
470 /// Default definition of ANTLR3_MEMMOVE. You can override this before including\r
471 /// antlr3.h if you wish to use your own implementation.\r
472 ///\r
473 #define ANTLR3_MEMMOVE(target, source, size)    memmove((void *)(target), (const void *)(source), (size_t)(size))\r
474 #endif\r
475 #ifndef ANTLR3_MEMSET\r
476 /// Default definition of ANTLR3_MEMSET. You can override this before including\r
477 /// antlr3.h if you wish to use your own implementation.\r
478 ///\r
479 #define ANTLR3_MEMSET(target, byte, size)               memset((void *)(target), (int)(byte), (size_t)(size))\r
480 #endif\r
481 \r
482 #ifndef ANTLR3_PRINTF\r
483 /// Default definition of printf, set this to something other than printf before including antlr3.h\r
484 /// if your system does not have a printf. Note that you can define this to be <code>//</code>\r
485 /// without harming the runtime.\r
486 ///\r
487 #define ANTLR3_PRINTF                                                   printf\r
488 #endif\r
489 \r
490 #ifndef ANTLR3_FPRINTF\r
491 /// Default definition of fprintf, set this to something other than fprintf before including antlr3.h\r
492 /// if your system does not have a fprintf. Note that you can define this to be <code>//</code>\r
493 /// without harming the runtime. \r
494 ///\r
495 #define ANTLR3_FPRINTF                                                  fprintf\r
496 #endif\r
497 \r
498 #ifdef __cplusplus\r
499 extern "C" {\r
500 #endif\r
501 \r
502 ANTLR3_API pANTLR3_INT_TRIE                                     antlr3IntTrieNew                                        (ANTLR3_UINT32 depth);\r
503 \r
504 ANTLR3_API pANTLR3_BITSET                                       antlr3BitsetNew                                         (ANTLR3_UINT32 numBits);\r
505 ANTLR3_API pANTLR3_BITSET                                       antlr3BitsetOf                                          (ANTLR3_INT32 bit, ...);\r
506 ANTLR3_API pANTLR3_BITSET                                       antlr3BitsetList                                        (pANTLR3_HASH_TABLE list);\r
507 ANTLR3_API pANTLR3_BITSET                                       antlr3BitsetCopy                                        (pANTLR3_BITSET_LIST blist);\r
508 ANTLR3_API pANTLR3_BITSET                                       antlr3BitsetLoad                                        (pANTLR3_BITSET_LIST blist);\r
509 ANTLR3_API void                                                         antlr3BitsetSetAPI                                      (pANTLR3_BITSET bitset);\r
510 \r
511 \r
512 ANTLR3_API pANTLR3_BASE_RECOGNIZER                      antlr3BaseRecognizerNew                         (ANTLR3_UINT32 type, ANTLR3_UINT32 sizeHint, pANTLR3_RECOGNIZER_SHARED_STATE state);\r
513 ANTLR3_API void                                                         antlr3RecognitionExceptionNew           (pANTLR3_BASE_RECOGNIZER recognizer);\r
514 ANTLR3_API void                                                         antlr3MTExceptionNew                            (pANTLR3_BASE_RECOGNIZER recognizer);\r
515 ANTLR3_API void                                                         antlr3MTNExceptionNew                           (pANTLR3_BASE_RECOGNIZER recognizer);\r
516 ANTLR3_API pANTLR3_HASH_TABLE                           antlr3HashTableNew                                      (ANTLR3_UINT32 sizeHint);\r
517 ANTLR3_API ANTLR3_UINT32                                        antlr3Hash                                                      (void * key, ANTLR3_UINT32 keylen);\r
518 ANTLR3_API pANTLR3_HASH_ENUM                            antlr3EnumNew                                           (pANTLR3_HASH_TABLE table);\r
519 ANTLR3_API pANTLR3_LIST                                         antlr3ListNew                                           (ANTLR3_UINT32 sizeHint);\r
520 ANTLR3_API pANTLR3_VECTOR_FACTORY                       antlr3VectorFactoryNew                          (ANTLR3_UINT32 sizeHint);\r
521 ANTLR3_API pANTLR3_VECTOR                                       antlr3VectorNew                                         (ANTLR3_UINT32 sizeHint);\r
522 ANTLR3_API pANTLR3_STACK                                        antlr3StackNew                                          (ANTLR3_UINT32 sizeHint);\r
523 ANTLR3_API void                                         antlr3SetVectorApi  (pANTLR3_VECTOR vector, ANTLR3_UINT32 sizeHint);\r
524 ANTLR3_API ANTLR3_UCHAR                                         antlr3c8toAntlrc                                        (ANTLR3_INT8 inc);\r
525 ANTLR3_API pANTLR3_TOPO                         antlr3TopoNew();\r
526 \r
527 ANTLR3_API pANTLR3_EXCEPTION                            antlr3ExceptionNew                                      (ANTLR3_UINT32 exception, void * name, void * message, ANTLR3_BOOLEAN freeMessage);\r
528 \r
529 ANTLR3_API pANTLR3_INPUT_STREAM                         antlr3AsciiFileStreamNew                        (pANTLR3_UINT8 fileName);\r
530                 \r
531 ANTLR3_API pANTLR3_INPUT_STREAM                         antlr3NewAsciiStringInPlaceStream   (pANTLR3_UINT8 inString, ANTLR3_UINT32 size, pANTLR3_UINT8 name);\r
532 ANTLR3_API pANTLR3_INPUT_STREAM                         antlr3NewUCS2StringInPlaceStream        (pANTLR3_UINT16 inString, ANTLR3_UINT32 size, pANTLR3_UINT16 name);\r
533 ANTLR3_API pANTLR3_INPUT_STREAM                         antlr3NewAsciiStringCopyStream          (pANTLR3_UINT8 inString, ANTLR3_UINT32 size, pANTLR3_UINT8 name);\r
534 \r
535 ANTLR3_API pANTLR3_INT_STREAM                           antlr3IntStreamNew                                      (void);\r
536 \r
537 ANTLR3_API pANTLR3_STRING_FACTORY                       antlr3StringFactoryNew                          (void);\r
538 ANTLR3_API pANTLR3_STRING_FACTORY                       antlr3UCS2StringFactoryNew                      (void);\r
539 \r
540 ANTLR3_API pANTLR3_COMMON_TOKEN                         antlr3CommonTokenNew                            (ANTLR3_UINT32 ttype);\r
541 ANTLR3_API pANTLR3_TOKEN_FACTORY                        antlr3TokenFactoryNew                           (pANTLR3_INPUT_STREAM input);\r
542 ANTLR3_API void                                                         antlr3SetTokenAPI                                       (pANTLR3_COMMON_TOKEN token);\r
543 \r
544 ANTLR3_API pANTLR3_LEXER                        antlr3LexerNewStream                            (ANTLR3_UINT32 sizeHint, pANTLR3_INPUT_STREAM input, pANTLR3_RECOGNIZER_SHARED_STATE state);\r
545 ANTLR3_API pANTLR3_LEXER                        antlr3LexerNew                                          (ANTLR3_UINT32 sizeHint, pANTLR3_RECOGNIZER_SHARED_STATE state);\r
546 ANTLR3_API pANTLR3_PARSER                       antlr3ParserNewStreamDbg                        (ANTLR3_UINT32 sizeHint, pANTLR3_TOKEN_STREAM tstream, pANTLR3_DEBUG_EVENT_LISTENER dbg, pANTLR3_RECOGNIZER_SHARED_STATE state);\r
547 ANTLR3_API pANTLR3_PARSER                       antlr3ParserNewStream                           (ANTLR3_UINT32 sizeHint, pANTLR3_TOKEN_STREAM tstream, pANTLR3_RECOGNIZER_SHARED_STATE state);\r
548 ANTLR3_API pANTLR3_PARSER                       antlr3ParserNew                                         (ANTLR3_UINT32 sizeHint, pANTLR3_RECOGNIZER_SHARED_STATE state);\r
549 \r
550 ANTLR3_API pANTLR3_COMMON_TOKEN_STREAM          antlr3CommonTokenStreamSourceNew        (ANTLR3_UINT32 hint, pANTLR3_TOKEN_SOURCE source);\r
551 ANTLR3_API pANTLR3_COMMON_TOKEN_STREAM          antlr3CommonTokenStreamNew                      (ANTLR3_UINT32 hint);\r
552 ANTLR3_API pANTLR3_COMMON_TOKEN_STREAM          antlr3CommonTokenDebugStreamSourceNew\r
553                                                                                                                                                                 (ANTLR3_UINT32 hint, pANTLR3_TOKEN_SOURCE source, pANTLR3_DEBUG_EVENT_LISTENER debugger);\r
554 \r
555 ANTLR3_API pANTLR3_BASE_TREE_ADAPTOR        ANTLR3_TREE_ADAPTORNew                              (pANTLR3_STRING_FACTORY strFactory);\r
556 ANTLR3_API pANTLR3_BASE_TREE_ADAPTOR        ANTLR3_TREE_ADAPTORDebugNew                 (pANTLR3_STRING_FACTORY strFactory, pANTLR3_DEBUG_EVENT_LISTENER        debugger);\r
557 ANTLR3_API pANTLR3_COMMON_TREE                          antlr3CommonTreeNew                                     (void);\r
558 ANTLR3_API pANTLR3_COMMON_TREE                          antlr3CommonTreeNewFromTree                     (pANTLR3_COMMON_TREE tree);\r
559 ANTLR3_API pANTLR3_COMMON_TREE                          antlr3CommonTreeNewFromToken            (pANTLR3_COMMON_TOKEN tree);\r
560 ANTLR3_API pANTLR3_ARBORETUM                            antlr3ArboretumNew                                      (pANTLR3_STRING_FACTORY factory);\r
561 ANTLR3_API void                                                         antlr3SetCTAPI                                          (pANTLR3_COMMON_TREE tree);\r
562 ANTLR3_API pANTLR3_BASE_TREE                            antlr3BaseTreeNew                                       (pANTLR3_BASE_TREE tree);\r
563 \r
564 ANTLR3_API void                                                         antlr3BaseTreeAdaptorInit                       (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_DEBUG_EVENT_LISTENER debugger);\r
565 \r
566 ANTLR3_API pANTLR3_TREE_PARSER                          antlr3TreeParserNewStream                       (ANTLR3_UINT32 sizeHint, pANTLR3_COMMON_TREE_NODE_STREAM ctnstream, pANTLR3_RECOGNIZER_SHARED_STATE state);\r
567 \r
568 ANTLR3_API ANTLR3_INT32                                         antlr3dfaspecialTransition                      (void * ctx, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_INT_STREAM is, pANTLR3_CYCLIC_DFA dfa, ANTLR3_INT32 s);\r
569 ANTLR3_API ANTLR3_INT32                                         antlr3dfaspecialStateTransition         (void * ctx, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_INT_STREAM is, pANTLR3_CYCLIC_DFA dfa, ANTLR3_INT32 s);\r
570 ANTLR3_API ANTLR3_INT32                                         antlr3dfapredict                                        (void * ctx, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_INT_STREAM is, pANTLR3_CYCLIC_DFA cdfa);\r
571 \r
572 ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM  antlr3CommonTreeNodeStreamNewTree   (pANTLR3_BASE_TREE tree, ANTLR3_UINT32 hint);\r
573 ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM  antlr3CommonTreeNodeStreamNew               (pANTLR3_STRING_FACTORY strFactory, ANTLR3_UINT32 hint);\r
574 ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM  antlr3UnbufTreeNodeStreamNewTree    (pANTLR3_BASE_TREE tree, ANTLR3_UINT32 hint);\r
575 ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM  antlr3UnbufTreeNodeStreamNew                (pANTLR3_STRING_FACTORY strFactory, ANTLR3_UINT32 hint);\r
576 ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM  antlr3CommonTreeNodeStreamNewStream (pANTLR3_COMMON_TREE_NODE_STREAM inStream);\r
577 ANTLR3_API pANTLR3_TREE_NODE_STREAM         antlr3TreeNodeStreamNew                             ();\r
578 ANTLR3_API void                         fillBufferExt                                   (pANTLR3_COMMON_TOKEN_STREAM tokenStream);\r
579 \r
580 ANTLR3_API pANTLR3_REWRITE_RULE_TOKEN_STREAM \r
581             antlr3RewriteRuleTOKENStreamNewAE   (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description);\r
582 ANTLR3_API pANTLR3_REWRITE_RULE_TOKEN_STREAM \r
583             antlr3RewriteRuleTOKENStreamNewAEE  (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, void * oneElement);\r
584 ANTLR3_API pANTLR3_REWRITE_RULE_TOKEN_STREAM \r
585             antlr3RewriteRuleTOKENStreamNewAEV  (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, pANTLR3_VECTOR vector);\r
586 \r
587 ANTLR3_API pANTLR3_REWRITE_RULE_NODE_STREAM \r
588             antlr3RewriteRuleNODEStreamNewAE    (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description);\r
589 ANTLR3_API pANTLR3_REWRITE_RULE_NODE_STREAM \r
590             antlr3RewriteRuleNODEStreamNewAEE   (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, void * oneElement);\r
591 ANTLR3_API pANTLR3_REWRITE_RULE_NODE_STREAM \r
592             antlr3RewriteRuleNODEStreamNewAEV   (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, pANTLR3_VECTOR vector);\r
593 \r
594 ANTLR3_API pANTLR3_REWRITE_RULE_SUBTREE_STREAM \r
595             antlr3RewriteRuleSubtreeStreamNewAE (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description);\r
596 ANTLR3_API pANTLR3_REWRITE_RULE_SUBTREE_STREAM \r
597             antlr3RewriteRuleSubtreeStreamNewAEE(pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, void * oneElement);\r
598 ANTLR3_API pANTLR3_REWRITE_RULE_SUBTREE_STREAM \r
599             antlr3RewriteRuleSubtreeStreamNewAEV(pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, pANTLR3_VECTOR vector);\r
600 \r
601 ANTLR3_API pANTLR3_DEBUG_EVENT_LISTENER         antlr3DebugListenerNew                          ();\r
602 \r
603 #ifdef __cplusplus\r
604 }\r
605 #endif\r
606 \r
607 #endif  /* _ANTLR3DEFS_H        */\r