From 73b9c41bbba77f1ab53b7984ab83c60e8a981114 Mon Sep 17 00:00:00 2001 From: mainzelm Date: Tue, 2 Jan 2001 14:42:14 +0000 Subject: [PATCH] define-enum-constants-from-zero for enumerations wirhout explicit numbers. --- scsh/enumconst.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/scsh/enumconst.scm b/scsh/enumconst.scm index 7de5a3e..e3957b4 100644 --- a/scsh/enumconst.scm +++ b/scsh/enumconst.scm @@ -33,3 +33,18 @@ (syntax-rules () ((define-enum-constants set (elt val) ...) (begin (define-enum-constant set elt val) ...)))) + +(define-syntax define-enum-constants-from-x + (syntax-rules + () + ((define-enum-constants-from-zero x set ()) + (begin)) + ((define-enum-constants-from-zero x set (elt1 elt2 ...)) + (begin (define-enum-constant set elt1 x) + (define-enum-constants-from-x (+ x 1) set (elt2 ...)))))) + +(define-syntax define-enum-constants-from-zero + (syntax-rules + () + ((define-enum-constants-from-zero set (elt ...)) + (define-enum-constants-from-x 0 set (elt ...)))))