]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/TianoTools/Pccts/dlg/dlg.h
Restructuring for better separation of Tool packages.
[mirror_edk2.git] / Tools / Source / TianoTools / Pccts / dlg / dlg.h
diff --git a/Tools/Source/TianoTools/Pccts/dlg/dlg.h b/Tools/Source/TianoTools/Pccts/dlg/dlg.h
deleted file mode 100644 (file)
index 9f387c0..0000000
+++ /dev/null
@@ -1,250 +0,0 @@
-/* dlg header file\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
- * DLG 1.33\r
- * Will Cohen\r
- * With mods by Terence Parr; AHPCRC, University of Minnesota\r
- * 1989-2001\r
- */\r
-\r
-/* MR1 Move pcctscfg.h to top of file                                  */\r
-\r
-#include "pcctscfg.h"                                          \r
-\r
-/* turn off warnings for unreferenced labels */\r
-\r
-#ifdef _MSC_VER\r
-#pragma warning(disable:4102)\r
-#endif\r
-\r
-#include "set.h"\r
-\r
-#define TRUE   1\r
-#define FALSE  0\r
-\r
-/***** output related stuff *******************/\r
-#define IN     input_stream\r
-#define OUT    output_stream\r
-\r
-#define MAX_MODES      50      /* number of %%names allowed */\r
-#define MAX_ON_LINE    10\r
-\r
-#define NFA_MIN                64      /* minimum nfa_array size */\r
-#define DFA_MIN                64      /* minimum dfa_array size */\r
-\r
-#define DEFAULT_CLASSNAME "DLGLexer"\r
-\r
-/* these macros allow the size of the character set to be easily changed */\r
-/* NOTE: do NOT change MIN_CHAR since EOF is the lowest char, -1 */\r
-#define MIN_CHAR (-1)  /* lowest possible character possible on input */\r
-#define MAX_CHAR 255   /* highest possible character possible on input */\r
-#define CHAR_RANGE (1+(MAX_CHAR) - (MIN_CHAR))\r
-\r
-/* indicates that the not an "array" reference */\r
-#define NIL_INDEX 0\r
-\r
-/* size of hash table used to find dfa_states quickly */\r
-#define HASH_SIZE 211\r
-\r
-#define nfa_node struct _nfa_node\r
-nfa_node {\r
-       int             node_no;\r
-       int             nfa_set;\r
-       int             accept; /* what case to use */\r
-       nfa_node        *trans[2];\r
-       set             label;  /* one arc always labelled with epsilon */\r
-};\r
-\r
-#define dfa_node struct _dfa_node\r
-dfa_node {\r
-       int             node_no;\r
-       int             dfa_set;\r
-       int             alternatives;   /* used for interactive mode */\r
-                                       /* are more characters needed */\r
-       int             done;\r
-       set             nfa_states;\r
-       int             trans[1];/* size of transition table depends on\r
-                                 * number of classes required for automata.\r
-                                 */\r
-\r
-\r
-};\r
-\r
-/******** macros for accessing the NFA and DFA nodes ****/\r
-#define NFA(x) (nfa_array[x])\r
-#define DFA(x) (dfa_array[x])\r
-#define DFA_NO(x) ( (x) ? (x)->node_no : NIL_INDEX)\r
-#define NFA_NO(x) ( (x) ? (x)->node_no : NIL_INDEX)\r
-\r
-/******** wrapper for memory checking ***/\r
-/*#define malloc(x)    dlg_malloc((x),__FILE__,__LINE__)*/\r
-\r
-/*#define calloc(x,y)  dlg_calloc((x),(y),__FILE__,__LINE__)*/\r
-\r
-/******** antlr attributes *************/\r
-typedef struct {\r
-       unsigned char letter;\r
-       nfa_node *l,*r;\r
-       set label;\r
-       } Attrib;\r
-\r
-#define zzcr_attr(attr, token, text) {                                 \\r
-       (attr)->letter = text[0]; (attr)->l = NULL;                     \\r
-       (attr)->r = NULL; (attr)->label = empty;                        \\r
-}\r
-#define zzd_attr(a)    set_free((a)->label);\r
-\r
-/******************** Variable ******************************/\r
-extern char    program[];      /* tells what program this is */\r
-extern char    version[];      /* tells what version this is */\r
-extern char    *file_str[];    /* file names being used */\r
-extern int     err_found;      /* flag to indicate error occured */\r
-extern int     action_no;      /* last action function printed */\r
-extern int     func_action;    /* should actions be turned into functions?*/\r
-extern set     used_chars;     /* used to label trans. arcs */\r
-extern set     used_classes;   /* classes or chars used to label trans. arcs */\r
-extern int     class_no;       /* number of classes used */\r
-extern set     class_sets[];   /* shows char. in each class */\r
-extern set     normal_chars;   /* mask off unused portion of set */\r
-extern int     comp_level;     /* what compression level to use */\r
-extern int     interactive;    /* interactive scanner (avoid lookahead)*/\r
-extern int     mode_counter;   /* keeps track of the number of %%name */\r
-extern int     dfa_basep[];    /* start of each group of dfa */\r
-extern int     dfa_class_nop[];/* number of transistion arcs in */\r
-                               /* each dfa in each mode */\r
-extern int     nfa_allocated;\r
-extern int     dfa_allocated;\r
-extern nfa_node        **nfa_array;    /* start of nfa "array" */\r
-extern dfa_node        **dfa_array;    /* start of dfa "array" */\r
-extern int     operation_no;   /* unique number for each operation */\r
-extern FILE    *input_stream;  /* where description read from */\r
-extern FILE    *output_stream; /* where to put the output */\r
-extern FILE    *mode_stream;   /* where to put the mode output */\r
-extern FILE    *class_stream;\r
-extern char    *mode_file;     /* name of file for mode output */\r
-extern int     gen_ansi;       /* produce ansi compatible code */\r
-extern int     case_insensitive;/* ignore case of input spec. */\r
-extern int     warn_ambig;     /* show if regular expressions ambiguous */\r
-extern int     gen_cpp;\r
-extern char *cl_file_str;\r
-extern int     firstLexMember; /* MR1 */\r
-extern char *OutputDirectory;\r
-extern char    *class_name;\r
-\r
-/******************** Functions ******************************/\r
-#ifdef __USE_PROTOS\r
-extern char    *dlg_malloc(int, char *, int); /* wrapper malloc */\r
-extern char    *dlg_calloc(int, int, char *, int); /* wrapper calloc */\r
-extern int     reach(unsigned *, register int, unsigned *);\r
-extern set     closure(set *, unsigned *);\r
-extern dfa_node *new_dfa_node(set);\r
-extern nfa_node *new_nfa_node(void);\r
-extern dfa_node *dfastate(set);\r
-extern dfa_node **nfa_to_dfa(nfa_node *);\r
-extern void    internal_error(char *, char *, int);    /* MR9 23-Sep-97 */\r
-extern FILE    *read_stream(char *);   /* opens file for reading */\r
-extern FILE    *write_stream(char *);  /* opens file for writing */\r
-extern void    make_nfa_model_node(void);\r
-extern void    make_dfa_model_node(int);\r
-extern char *ClassName(char *);\r
-extern char *OutMetaName(char *);\r
-extern void error(char*, int);\r
-extern void warning(char*, int);\r
-extern void p_head(void);\r
-extern void p_class_hdr(void);\r
-extern void p_includes(void);\r
-extern void p_tables(void);\r
-extern void p_tail(void);                                      /* MR1 */\r
-extern void p_class_def1(void);                                /* MR1 */\r
-extern void new_automaton_mode(void);                  /* MR1 */\r
-extern int  relabel(nfa_node *,int);                   /* MR1 */\r
-extern void p_shift_table(int);                                /* MR1 */\r
-extern void p_bshift_table(void);                              /* MR1 */\r
-extern void p_class_table(void);                               /* MR1 */\r
-extern void p_mode_def(char *,int);                    /* MR1 */\r
-extern void init(void);                                        /* MR1 */\r
-extern void p_class_def2(void);                                /* MR1 */\r
-extern void clear_hash(void);                          /* MR1 */\r
-extern void p_alternative_table(void);                 /* MR1 */\r
-extern void p_node_table(void);                                /* MR1 */\r
-extern void p_dfa_table(void);                         /* MR1 */\r
-extern void p_accept_table(void);                              /* MR1 */\r
-extern void p_action_table(void);                              /* MR1 */\r
-extern void p_base_table(void);                                /* MR1 */\r
-extern void p_single_node(int,int);                    /* MR1 */\r
-extern char * minsize(int);                            /* MR1 */\r
-extern void close1(nfa_node *,int,set *);              /* MR1 */\r
-extern void partition(nfa_node *,int);                 /* MR1 */\r
-extern void intersect_nfa_labels(nfa_node *,set *);    /* MR1 */\r
-extern void r_intersect(nfa_node *,set *);             /* MR1 */\r
-extern void label_node(nfa_node *);                    /* MR1 */\r
-extern void label_with_classes(nfa_node *);            /* MR1 */\r
-\r
-#else\r
-extern char *dlg_malloc();     /* wrapper malloc */\r
-extern char *dlg_calloc();     /* wrapper calloc */\r
-extern int     reach();\r
-extern set     closure();\r
-extern dfa_node *new_dfa_node();\r
-extern nfa_node *new_nfa_node();\r
-extern dfa_node *dfastate();\r
-extern dfa_node **nfa_to_dfa();\r
-extern void    internal_error();   /* MR9 23-Sep-97 */\r
-extern FILE    *read_stream();         /* opens file for reading */\r
-extern FILE    *write_stream();        /* opens file for writing */\r
-extern void    make_nfa_model_node();\r
-extern void    make_dfa_model_node();\r
-extern char *ClassName();\r
-extern char *OutMetaName();\r
-extern void error();\r
-extern void warning();\r
-extern void p_head();                   /* MR9 */\r
-extern void p_class_hdr();              /* MR9 */\r
-extern void p_includes();               /* MR9 */\r
-extern void p_tables();                 /* MR9 */\r
-extern void p_tail();                                  /* MR1 */\r
-extern void p_class_def1();                            /* MR1 */\r
-extern void new_automaton_mode();                      /* MR1 */\r
-extern int  relabel();                                 /* MR1 */\r
-extern void p_shift_table();                           /* MR1 */\r
-extern void p_bshift_table();                          /* MR1 */\r
-extern void p_class_table();                           /* MR1 */\r
-extern void p_mode_def();                              /* MR1 */\r
-extern void init();                                    /* MR1 */\r
-extern void p_class_def2();                            /* MR1 */\r
-extern void clear_hash();                              /* MR1 */\r
-extern void p_alternative_table();                     /* MR1 */\r
-extern void p_node_table();                            /* MR1 */\r
-extern void p_dfa_table();                             /* MR1 */\r
-extern void p_accept_table();                          /* MR1 */\r
-extern void p_action_table();                          /* MR1 */\r
-extern void p_base_table();                            /* MR1 */\r
-extern void p_single_node();                           /* MR1 */\r
-extern char * minsize();                               /* MR1 */\r
-extern void close1();                                  /* MR1 */\r
-extern void partition();                               /* MR1 */\r
-extern void intersect_nfa_labels();                    /* MR1 */\r
-extern void r_intersect();                             /* MR1 */\r
-extern void label_node();                              /* MR1 */\r
-extern void label_with_classes();                      /* MR1 */\r
-\r
-#endif\r