aboutsummaryrefslogtreecommitdiff
path: root/module/c/util.scm
diff options
context:
space:
mode:
Diffstat (limited to 'module/c/util.scm')
-rw-r--r--module/c/util.scm20
1 files changed, 20 insertions, 0 deletions
diff --git a/module/c/util.scm b/module/c/util.scm
new file mode 100644
index 00000000..f258d3e3
--- /dev/null
+++ b/module/c/util.scm
@@ -0,0 +1,20 @@
+(use-modules (c lex2)
+ (srfi srfi-1)
+ (srfi srfi-88)
+ (c to-token)
+ (c cpp-types))
+
+(define (tok s)
+ (map preprocessing-token->token (remove whitespace-token? (lex s))))
+
+(define* (parse tokens optional: (parser make-parser))
+ ((parser)
+ (build-lexical-analyzer tokens)
+ error))
+
+
+(define (mm)
+ (lalr-parser
+ (x)
+ (y (x))
+ ))