]> git.proxmox.com Git - mirror_edk2.git/blob - Tools/CCode/Source/Pccts/h/dlgdef.h
More moves for Tool Packages
[mirror_edk2.git] / Tools / CCode / Source / Pccts / h / dlgdef.h
1 /* dlgdef.h
2 * Things in scanner produced by dlg that should be visible to the outside
3 * world
4 *
5 * SOFTWARE RIGHTS
6 *
7 * We reserve no LEGAL rights to the Purdue Compiler Construction Tool
8 * Set (PCCTS) -- PCCTS is in the public domain. An individual or
9 * company may do whatever they wish with source code distributed with
10 * PCCTS or the code generated by PCCTS, including the incorporation of
11 * PCCTS, or its output, into commerical software.
12 *
13 * We encourage users to develop software with PCCTS. However, we do ask
14 * that credit is given to us for developing PCCTS. By "credit",
15 * we mean that if you incorporate our source code into one of your
16 * programs (commercial product, research project, or otherwise) that you
17 * acknowledge this fact somewhere in the documentation, research report,
18 * etc... If you like PCCTS and have developed a nice tool with the
19 * output, please mention that you developed it using PCCTS. In
20 * addition, we ask that this header remain intact in our source code.
21 * As long as these guidelines are kept, we expect to continue enhancing
22 * this system and expect to make other tools available as they are
23 * completed.
24 *
25 * ANTLR 1.33
26 * Terence Parr
27 * Parr Research Corporation
28 * with Purdue University and AHPCRC, University of Minnesota
29 * 1989-2000
30 */
31
32 #ifndef ZZDLGDEF_H
33 #define ZZDLGDEF_H
34
35 #include "pcctscfg.h"
36
37 #ifndef zzchar_t
38 #ifdef ZZWCHAR_T
39 #define zzchar_t wchar_t
40 #else
41 #define zzchar_t char
42 #endif
43 #endif
44
45 struct zzdlg_state {
46 FILE *stream;
47 #ifdef __USE_PROTOS
48 int (*func_ptr)(void);
49 #else
50 int (*func_ptr)();
51 #endif
52 zzchar_t *str;
53 int auto_num;
54 int add_erase;
55 int lookc;
56 int char_full;
57 int begcol, endcol;
58 int line;
59 zzchar_t *lextext, *begexpr, *endexpr;
60 int bufsize;
61 int bufovf;
62 zzchar_t *nextpos;
63 int class_num;
64 };
65
66 extern zzchar_t *zzlextext; /* text of most recently matched token */
67 extern zzchar_t *zzbegexpr; /* beginning of last reg expr recogn. */
68 extern zzchar_t *zzendexpr; /* beginning of last reg expr recogn. */
69 extern int zzbufsize; /* how long zzlextext is */
70 extern int zzbegcol; /* column that first character of token is in*/
71 extern int zzendcol; /* column that last character of token is in */
72 extern int zzline; /* line current token is on */
73 extern int zzreal_line; /* line of 1st portion of token that is not skipped */
74 extern int zzchar; /* character to determine next state */
75 extern int zzbufovf; /* indicates that buffer too small for text */
76 #ifdef __USE_PROTOS
77 extern void (*zzerr)(const char *);/* pointer to error reporting function */
78 #else
79 extern void (*zzerr)();
80 #endif
81
82 #ifdef USER_ZZMODE_STACK
83 extern int zzauto;
84 #endif
85
86 #ifdef __USE_PROTOS
87 extern void zzadvance(void);
88 extern void zzskip(void); /* erase zzlextext, look for antoher token */
89 extern void zzmore(void); /* keep zzlextext, look for another token */
90 extern void zzmode(int k); /* switch to automaton 'k' */
91 extern void zzrdstream(FILE *);/* what stream to read from */
92 extern void zzclose_stream(void);/* close the current input stream */
93 extern void zzrdfunc(int (*)(void));/* what function to get char from */
94 extern void zzrdstr( zzchar_t * );
95 extern void zzgettok(void); /* get next token */
96 extern void zzreplchar(zzchar_t c);/* replace last recognized reg. expr. with
97 a character */
98 extern void zzreplstr(zzchar_t *s);/* replace last recognized reg. expr. with
99 a string */
100 extern void zzsave_dlg_state(struct zzdlg_state *);
101 extern void zzrestore_dlg_state(struct zzdlg_state *);
102 extern int zzerr_in(void);
103 extern void zzerrstd(const char *);
104 extern void zzerraction(void);
105
106 #else
107
108 extern void zzadvance();
109 extern void zzskip(); /* erase zzlextext, look for antoher token */
110 extern void zzmore(); /* keep zzlextext, look for another token */
111 extern void zzmode(/*k*/); /* switch to automaton 'k' */
112 extern void zzrdstream(); /* what stream to read from */
113 extern void zzclose_stream();/* close the current input stream */
114 extern void zzrdfunc(); /* what function to get char from */
115 extern void zzrdstr();
116 extern void zzgettok(); /* get next token */
117 extern void zzreplchar(); /* replace last recognized reg. expr. with
118 a character */
119 extern void zzreplstr(); /* replace last recognized reg. expr. with
120 a string */
121 extern void zzsave_dlg_state();
122 extern void zzrestore_dlg_state();
123 extern int zzerr_in();
124 extern void zzerrstd();
125 extern void zzerraction();
126 #endif
127
128 #endif