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