Add support for define-syntax/doc to duck.
This commit is contained in:
parent
d4657ad3b6
commit
396e2d9896
1 changed files with 13 additions and 2 deletions
15
src/duck.scm
15
src/duck.scm
|
@ -35,7 +35,16 @@
|
|||
(chicken syntax))
|
||||
|
||||
(define-syntax duck-extract-defines
|
||||
(syntax-rules (define define/doc make-parameter define* define*/doc)
|
||||
(syntax-rules
|
||||
(define define/doc
|
||||
make-parameter
|
||||
define* define*/doc
|
||||
define-syntax define-syntax/doc)
|
||||
((_ (define-syntax id transformer))
|
||||
(define-syntax id transformer))
|
||||
((_ (define-syntax/doc id doc transformer))
|
||||
(define-syntax id transformer))
|
||||
|
||||
((_ (define var val))
|
||||
(define var val))
|
||||
((_ (define/doc var doc val))
|
||||
|
@ -63,7 +72,9 @@
|
|||
expr)))
|
||||
|
||||
(define-syntax duck-extract-doc
|
||||
(syntax-rules (define/doc make-parameter define*/doc)
|
||||
(syntax-rules (define/doc make-parameter define*/doc define-syntax/doc)
|
||||
((_ (define-syntax/doc id doc transformer))
|
||||
(list 'STX 'id `doc))
|
||||
((_ (define/doc (proc . args) doc expr ...))
|
||||
(list 'FUN 'proc `doc 'args))
|
||||
((_ (define*/doc (proc . args) doc expr ...))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue