]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkCompatibilityPkg/Other/Maintained/Tools/Pccts/sorcerer/h/sintstack.h
Add in the 1st version of ECP.
[mirror_edk2.git] / EdkCompatibilityPkg / Other / Maintained / Tools / Pccts / sorcerer / h / sintstack.h
diff --git a/EdkCompatibilityPkg/Other/Maintained/Tools/Pccts/sorcerer/h/sintstack.h b/EdkCompatibilityPkg/Other/Maintained/Tools/Pccts/sorcerer/h/sintstack.h
new file mode 100644 (file)
index 0000000..a8e14bb
--- /dev/null
@@ -0,0 +1,61 @@
+#ifndef SINTSTACK_H\r
+#define SINTSTACK_H\r
+\r
+/*\r
+ * SIntStack.h\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 "sorcerer.h"\r
+\r
+typedef struct _istack {\r
+    int *data;\r
+    int sp;\r
+    int  size;\r
+  } SIntStack;\r
+\r
+#ifdef __USE_PROTOS\r
+extern SIntStack *sint_newstack(int size);\r
+extern void sint_freestack(SIntStack *st);\r
+extern void sint_push(SIntStack *st, int i);\r
+extern int sint_pop(SIntStack *st);\r
+extern int sint_stacksize(SIntStack *st);\r
+extern void sint_stackreset(SIntStack *st);\r
+extern int sint_stackempty(SIntStack *st);\r
+extern int sint_top(SIntStack *st);\r
+#else\r
+extern SIntStack *sint_newstack();\r
+extern void sint_freestack();\r
+extern void sint_push();\r
+extern int sint_pop();\r
+extern int sint_stacksize();\r
+extern void sint_stackreset();\r
+extern int sint_stackempty();\r
+extern int sint_top();\r
+#endif\r
+\r
+#endif\r