mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-19 05:39:18 +02:00
more extensive list of constructs not to descend into
This commit is contained in:
parent
9a9f974d69
commit
1db8a573f1
1 changed files with 9 additions and 9 deletions
|
@ -43,15 +43,15 @@
|
||||||
(memq? random-symbol-to-match sk fk))))))))
|
(memq? random-symbol-to-match sk fk))))))))
|
||||||
(begin
|
(begin
|
||||||
(define-syntax report-vars
|
(define-syntax report-vars
|
||||||
(syntax-rules (quote quasiquote lambda)
|
(syntax-rules ()
|
||||||
((report-vars (lambda . x) (next ...) res)
|
((report-vars (op arg0 arg1 ...) (next ...) res)
|
||||||
(next ... res))
|
(syntax-memq? op (quote quasiquote lambda let let* letrec letrec*
|
||||||
((report-vars 'x (next ...) res)
|
let-syntax letrec-syntax let-values let*-values
|
||||||
(next ... res))
|
receive match case define define-syntax do)
|
||||||
((report-vars `x (next ...) res)
|
(next ... res)
|
||||||
(next ... res))
|
(report-vars arg0
|
||||||
((report-vars (op arg0 arg1 ...) next res)
|
(report-vars (op arg1 ...) (next ...))
|
||||||
(report-vars arg0 (report-vars (op arg1 ...) next) res))
|
res)))
|
||||||
((report-vars (op . x) (next ...) res)
|
((report-vars (op . x) (next ...) res)
|
||||||
(next ... res))
|
(next ... res))
|
||||||
((report-vars x (next ...) (res ...))
|
((report-vars x (next ...) (res ...))
|
||||||
|
|
Loading…
Add table
Reference in a new issue