]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkCompatibilityPkg/Other/Maintained/Tools/Pccts/sorcerer/h/sorcerer.h
EdkCompatibilityPkg: Remove EdkCompatibilityPkg
[mirror_edk2.git] / EdkCompatibilityPkg / Other / Maintained / Tools / Pccts / sorcerer / h / sorcerer.h
diff --git a/EdkCompatibilityPkg/Other/Maintained/Tools/Pccts/sorcerer/h/sorcerer.h b/EdkCompatibilityPkg/Other/Maintained/Tools/Pccts/sorcerer/h/sorcerer.h
deleted file mode 100644 (file)
index 29f7702..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-#ifndef sorcerer_h\r
-#define sorcerer_h\r
-\r
-/*\r
- * sorcerer.h -- header for all sorcerer files\r
- *\r
- * SOFTWARE RIGHTS\r
- *\r
- * We reserve no LEGAL rights to SORCERER -- SORCERER is in the public\r
- * domain.  An individual or company may do whatever they wish with\r
- * source code distributed with SORCERER or the code generated by\r
- * SORCERER, including the incorporation of SORCERER, or its output, into\r
- * commerical software.\r
- *\r
- * We encourage users to develop software with SORCERER.  However, we do\r
- * ask that credit is given to us for developing SORCERER.  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 SORCERER and have developed a nice tool with the\r
- * output, please mention that you developed it using SORCERER.  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
- * SORCERER 1.00B\r
- * Terence Parr\r
- * AHPCRC, University of Minnesota\r
- * 1992-1994\r
- */\r
-\r
-#include "pcctscfg.h"\r
-\r
-#ifdef __USE_PROTOS\r
-#include <stdlib.h>\r
-#else\r
-#include <malloc.h>\r
-#endif\r
-\r
-#include <setjmp.h>\r
-\r
-/* SUPERCLASS SORAST (your tree must look at minimum like this)\r
-typedef struct _node {\r
-            struct _node *right, *down;\r
-            int token;\r
-      -- user-defined stuff goes here\r
-        } SORAST;\r
-*/\r
-\r
-/* Can be used sort of like inheritance to get the desired struct def */\r
-#define AST_REQD_FIELDS \\r
-            struct _node *right, *down; \\r
-            int token;\r
-\r
-/* C MATCH */ /* MR21 Short circuit on null pointer */\r
-#define _MATCH(tok)  if (! _t || _t->token!=tok ) if ( _parser->guessing ) _GUESS_FAIL; else mismatched_token(_parser, tok, _t)\r
-#define _MATCHRANGE(tok,tok2) \\r
-    if (! _t || _t->token<tok || _t->token>tok2 ) if ( _parser->guessing ) _GUESS_FAIL; else mismatched_range(_parser, tok, tok2, _t)\r
-\r
-/* C++ MATCH */\r
-#define _CPPMATCH(tok)  if ( _t->token()!=tok ) if ( _parser->guessing ) _GUESS_FAIL; else mismatched_token(_parser, tok, _t)\r
-#define _CPPMATCHRANGE(tok,tok2) \\r
-    if ( _t->token()<tok || _t->token()>tok2 ) if ( _parser->guessing ) _GUESS_FAIL; else mismatched_range(_parser, tok, tok2, _t)\r
-\r
-/* Normal DOWN and RIGHT */\r
-#define _DOWN        _t=_t->down\r
-#define _RIGHT        _t=_t->right\r
-\r
-/* C++ DOWN and RIGHT */\r
-#define _CPPDOWN      _t=(SORAST *) _t->down()\r
-#define _CPPRIGHT      _t=(SORAST *) _t->right()\r
-\r
-#define _SAVE        SORAST *_save=_t\r
-#define _RESTORE      _t = _save\r
-#define  _SETLABEL(u)    u=_t\r
-#define _WILDCARD      if ( _t==NULL ) if ( _parser->guessing ) _GUESS_FAIL; else missing_wildcard(_parser)\r
-#define _GUESS_BLOCK    STreeParser _st; int _gv; SORAST *_savet=NULL;\r
-#define _GUESS        {_st = *_parser; \\r
-              _savet = _t; \\r
-              _parser->guessing = 1; \\r
-              _gv = setjmp(_parser->startofguess.state);}\r
-#define _GUESS_FAIL      longjmp(_parser->startofguess.state, 1)\r
-#define _GUESS_DONE      {*_parser = _st; _t = _savet;}\r
-\r
-/* These are used mainly by the C output */\r
-#ifndef ast_down\r
-#define ast_down    down\r
-#endif\r
-#ifndef ast_right\r
-#define ast_right    right\r
-#endif\r
-\r
-#define STreeTry(r,p,t)     \\r
-      (p)->try_result = NULL;          \\r
-            (p)->sjrv = setjmp((p)->startofguess);  \\r
-            if ( !(p)->sjrv ) {            \\r
-                rule(p,t,&try_result);        \\r
-                (p)->try_ok = 1;          \\r
-      }                    \\r
-            else {                  \\r
-                (p)->try_ok = 0;          \\r
-      }                    \\r
-            if ( (p)->try_ok )\r
-\r
-\r
-/* Used only during TRANSFORM mode */\r
-#define  TREE_CONSTR_PTRS  SORAST *_r=NULL,*_s=NULL,*_e=NULL\r
-\r
-typedef struct _Sjmp_buf {\r
-      jmp_buf state;\r
-    } Sjmp_buf;\r
-\r
-#ifndef _PARSER_VARS\r
-#define _PARSER_VARS\r
-#endif\r
-\r
-#ifndef _REFVARS\r
-#define _REFVARS\r
-#endif\r
-\r
-typedef struct _STreeParser {\r
-      int try_ok, sjrv;  /* used by STreeTry macro */\r
-      SORAST *try_result;  /* tree coming back from try */\r
-      int guessing;\r
-      Sjmp_buf startofguess;\r
-      SORAST *t;\r
-      _REFVARS\r
-      _PARSER_VARS\r
-    } STreeParser;\r
-\r
-#define STreeParserInit(_p) { (_p)->guessing = 0; _refvar_inits(_p); }\r
-\r
-\r
-        /* S a n i t y  C h e c k i n g */\r
-\r
-#ifndef require\r
-#define require(expr, err) {if ( !(expr) ) sorcerer_panic(err);}\r
-#endif\r
-\r
-\r
-               /* T r a n s f o r m  M a c r o s */\r
-#define ast_return(_t)  *_result = _t\r
-\r
-\r
-#ifdef __USE_PROTOS\r
-extern void mismatched_range(STreeParser *_parser, int looking_for, int upper_token, SORAST *found);\r
-extern void missing_wildcard(STreeParser *_parser);\r
-extern void mismatched_token(STreeParser *_parser, int looking_for, SORAST *found);\r
-extern void no_viable_alt(STreeParser *_parser, char *rulename, SORAST *root);\r
-extern void sorcerer_panic(char *err);\r
-extern void _refvar_inits(STreeParser *);    /* MR15 Kevin J. Cummings */\r
-extern void _mkroot(SORAST **, SORAST **, SORAST **, SORAST *);\r
-extern void _mkchild(SORAST **, SORAST **, SORAST **, SORAST *);\r
-extern SORAST *ast_alloc(void);\r
-extern SORAST *ast_dup(SORAST *t);\r
-extern SORAST *ast_dup_node(SORAST *t);\r
-#else\r
-extern void mismatched_range();\r
-extern void missing_wildcard();\r
-extern void mismatched_token();\r
-extern void no_viable_alt();\r
-extern void sorcerer_panic();\r
-extern void _refvar_inits();    /* MR15 Kevin J. Cummings */\r
-extern void _mkroot();\r
-extern void _mkchild();\r
-extern SORAST *ast_alloc();\r
-extern SORAST *ast_dup();\r
-extern SORAST *ast_dup_node();\r
-#endif\r
-\r
-#endif\r