mirror of
				https://github.com/acidanthera/audk.git
				synced 2025-10-25 17:23:53 +02:00 
			
		
		
		
	git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8964 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			129 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			129 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* dlgdef.h
 | |
|  * Things in scanner produced by dlg that should be visible to the outside
 | |
|  * world
 | |
|  *
 | |
|  * SOFTWARE RIGHTS
 | |
|  *
 | |
|  * We reserve no LEGAL rights to the Purdue Compiler Construction Tool
 | |
|  * Set (PCCTS) -- PCCTS is in the public domain.  An individual or
 | |
|  * company may do whatever they wish with source code distributed with
 | |
|  * PCCTS or the code generated by PCCTS, including the incorporation of
 | |
|  * PCCTS, or its output, into commerical software.
 | |
|  *
 | |
|  * We encourage users to develop software with PCCTS.  However, we do ask
 | |
|  * that credit is given to us for developing PCCTS.  By "credit",
 | |
|  * we mean that if you incorporate our source code into one of your
 | |
|  * programs (commercial product, research project, or otherwise) that you
 | |
|  * acknowledge this fact somewhere in the documentation, research report,
 | |
|  * etc...  If you like PCCTS and have developed a nice tool with the
 | |
|  * output, please mention that you developed it using PCCTS.  In
 | |
|  * addition, we ask that this header remain intact in our source code.
 | |
|  * As long as these guidelines are kept, we expect to continue enhancing
 | |
|  * this system and expect to make other tools available as they are
 | |
|  * completed.
 | |
|  *
 | |
|  * ANTLR 1.33
 | |
|  * Terence Parr
 | |
|  * Parr Research Corporation
 | |
|  * with Purdue University and AHPCRC, University of Minnesota
 | |
|  * 1989-2000
 | |
|  */
 | |
| 
 | |
| #ifndef ZZDLGDEF_H
 | |
| #define ZZDLGDEF_H
 | |
| 
 | |
| #include "pcctscfg.h"
 | |
| 
 | |
| #ifndef zzchar_t
 | |
| #ifdef ZZWCHAR_T
 | |
| #define zzchar_t wchar_t
 | |
| #else
 | |
| #define zzchar_t char
 | |
| #endif
 | |
| #endif
 | |
| 
 | |
| struct zzdlg_state {
 | |
| 	FILE *stream;
 | |
| #ifdef __USE_PROTOS
 | |
| 	int (*func_ptr)(void);
 | |
| #else
 | |
| 	int (*func_ptr)();
 | |
| #endif
 | |
| 	zzchar_t *str;
 | |
| 	int auto_num;
 | |
| 	int add_erase;
 | |
| 	int lookc;
 | |
| 	int char_full;
 | |
| 	int begcol, endcol;
 | |
| 	int line;
 | |
| 	zzchar_t *lextext, *begexpr, *endexpr;
 | |
| 	int bufsize;
 | |
| 	int bufovf;
 | |
| 	zzchar_t *nextpos;
 | |
| 	int	class_num;
 | |
| };
 | |
| 
 | |
| extern zzchar_t	*zzlextext;  	/* text of most recently matched token */
 | |
| extern zzchar_t	*zzbegexpr;	/* beginning of last reg expr recogn. */
 | |
| extern zzchar_t	*zzendexpr;	/* beginning of last reg expr recogn. */
 | |
| extern int	zzbufsize;	/* how long zzlextext is */
 | |
| extern int	zzbegcol;	/* column that first character of token is in*/
 | |
| extern int	zzendcol;	/* column that last character of token is in */
 | |
| extern int	zzline;		/* line current token is on */
 | |
| extern int	zzreal_line;		/* line of 1st portion of token that is not skipped */
 | |
| extern int	zzchar;		/* character to determine next state */
 | |
| extern int	zzbufovf;	/* indicates that buffer too small for text */
 | |
| #ifdef __USE_PROTOS
 | |
| extern void	(*zzerr)(const char *);/* pointer to error reporting function */
 | |
| #else
 | |
| extern void	(*zzerr)();
 | |
| #endif
 | |
| 
 | |
| #ifdef USER_ZZMODE_STACK
 | |
| extern int     zzauto;
 | |
| #endif
 | |
| 
 | |
| #ifdef __USE_PROTOS
 | |
| extern void	zzadvance(void);
 | |
| extern void	zzskip(void);	/* erase zzlextext, look for antoher token */
 | |
| extern void	zzmore(void);	/* keep zzlextext, look for another token */
 | |
| extern void	zzmode(int k);	/* switch to automaton 'k' */
 | |
| extern void	zzrdstream(FILE *);/* what stream to read from */
 | |
| extern void	zzclose_stream(void);/* close the current input stream */
 | |
| extern void	zzrdfunc(int (*)(void));/* what function to get char from */
 | |
| extern void zzrdstr( zzchar_t * );
 | |
| extern void	zzgettok(void);	/* get next token */
 | |
| extern void	zzreplchar(zzchar_t c);/* replace last recognized reg. expr. with
 | |
| 					a character */
 | |
| extern void	zzreplstr(zzchar_t *s);/* replace last recognized reg. expr. with
 | |
| 					a string */
 | |
| extern void zzsave_dlg_state(struct zzdlg_state *);
 | |
| extern void zzrestore_dlg_state(struct zzdlg_state *);
 | |
| extern int zzerr_in(void);
 | |
| extern void	zzerrstd(const char *);
 | |
| extern void zzerraction(void);
 | |
| 
 | |
| #else
 | |
| 
 | |
| extern void	zzadvance();
 | |
| extern void	zzskip();	/* erase zzlextext, look for antoher token */
 | |
| extern void	zzmore();	/* keep zzlextext, look for another token */
 | |
| extern void	zzmode(/*k*/);	/* switch to automaton 'k' */
 | |
| extern void	zzrdstream();	/* what stream to read from */
 | |
| extern void	zzclose_stream();/* close the current input stream */
 | |
| extern void	zzrdfunc();	/* what function to get char from */
 | |
| extern void zzrdstr();
 | |
| extern void	zzgettok();	/* get next token */
 | |
| extern void	zzreplchar();	/* replace last recognized reg. expr. with
 | |
| 					a character */
 | |
| extern void	zzreplstr();	/* replace last recognized reg. expr. with
 | |
| 					a string */
 | |
| extern void zzsave_dlg_state();
 | |
| extern void zzrestore_dlg_state();
 | |
| extern int zzerr_in();
 | |
| extern void	zzerrstd();
 | |
| extern void zzerraction();
 | |
| #endif
 | |
| 
 | |
| #endif
 |