aboutsummaryrefslogtreecommitdiff
path: root/src/boot/strap/ast.clisp
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2012-01-08 14:55:53 +0000
committerdos-reis <gdr@axiomatics.org>2012-01-08 14:55:53 +0000
commitc95f1b3efced12df21e9e99369cdb1a0a7d8ec2d (patch)
treebb14c435c048163f87a83ae27366415fd753372f /src/boot/strap/ast.clisp
parent041f2e9f7c59fd11a182760e31dd3bdb75d3ea79 (diff)
downloadopen-axiom-c95f1b3efced12df21e9e99369cdb1a0a7d8ec2d.tar.gz
* boot/ast.boot (bfEnum): New.
* boot/translator.boot (translateToplevel): Use it to translate enumeration definitions. * interp/types.boot (%ConstructorKind): Use new syntax.
Diffstat (limited to 'src/boot/strap/ast.clisp')
-rw-r--r--src/boot/strap/ast.clisp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/boot/strap/ast.clisp b/src/boot/strap/ast.clisp
index b0c40086..e90f8223 100644
--- a/src/boot/strap/ast.clisp
+++ b/src/boot/strap/ast.clisp
@@ -2329,6 +2329,9 @@
(DEFUN |bfDs| (|n|) (COND ((EQL |n| 0) "") (T (CONCAT "D" (|bfDs| (- |n| 1))))))
+(DEFUN |bfEnum| (|t| |csts|)
+ (LIST 'DEFTYPE |t| NIL (|backquote| (CONS 'MEMBER |csts|) NIL)))
+
(DEFUN |bfHandlers| (|n| |e| |hs|) (|bfHandlers,main| |n| |e| |hs| NIL))
(DEFUN |bfHandlers,main| (|n| |e| |hs| |xs|)