summaryrefslogtreecommitdiff
path: root/Tools/CCode/Source/Pccts/support/rexpr/rexpr.h
diff options
context:
space:
mode:
authorlhauch <lhauch@6f19259b-4bc3-4df7-8a09-765794883524>2006-10-05 23:24:16 +0000
committerlhauch <lhauch@6f19259b-4bc3-4df7-8a09-765794883524>2006-10-05 23:24:16 +0000
commit604371b98d3ad2472e96be8d126df92b2fcf68df (patch)
treec51c0d63bf3517ed48b28b111cf744dd5da4c866 /Tools/CCode/Source/Pccts/support/rexpr/rexpr.h
parent28305207ea586d0b5ceb530b0e2a436cad9fdd8f (diff)
downloadedk2-platforms-604371b98d3ad2472e96be8d126df92b2fcf68df.tar.xz
More moves for Tool Packages
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1676 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'Tools/CCode/Source/Pccts/support/rexpr/rexpr.h')
-rw-r--r--Tools/CCode/Source/Pccts/support/rexpr/rexpr.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/Tools/CCode/Source/Pccts/support/rexpr/rexpr.h b/Tools/CCode/Source/Pccts/support/rexpr/rexpr.h
new file mode 100644
index 0000000000..e67a9652fb
--- /dev/null
+++ b/Tools/CCode/Source/Pccts/support/rexpr/rexpr.h
@@ -0,0 +1,30 @@
+#define Atom 256 /* token Atom (an impossible char value) */
+#define Epsilon 257 /* epsilon arc (an impossible char value) */
+
+/* track field must be same for all node types */
+typedef struct _a {
+ struct _a *track; /* track mem allocation */
+ int label;
+ struct _a *next;
+ struct _n *target;
+ } Arc, *ArcPtr;
+
+typedef struct _n {
+ struct _n *track;
+ ArcPtr arcs, arctail;
+ } Node, *NodePtr;
+
+typedef struct {
+ NodePtr left,
+ right;
+ } Graph, *GraphPtr;
+
+#ifdef __USE_PROTOS
+int rexpr( char *expr, char *s );
+int match( NodePtr automaton, char *s );
+#else
+int rexpr();
+int match();
+#endif
+
+