mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-21 14:49:18 +02:00
Fixing order of prefix import spec.
This commit is contained in:
parent
cc5d5d573c
commit
9a8395c69d
1 changed files with 7 additions and 7 deletions
14
lib/meta.scm
14
lib/meta.scm
|
@ -69,6 +69,13 @@
|
|||
(cond
|
||||
((not (and (pair? x) (list? x)))
|
||||
(error "invalid module syntax" x))
|
||||
((and (eq? 'prefix (car x)) (symbol? (caddr x)) (list? (cadr x)))
|
||||
(let ((mod-name+imports (resolve-import (cadr x))))
|
||||
(cons (car mod-name+imports)
|
||||
(map (lambda (i)
|
||||
(cons (symbol-append (caddr x) (if (pair? i) (car i) i))
|
||||
(if (pair? i) (cdr i) i)))
|
||||
(cdr mod-name+imports)))))
|
||||
((and (pair? (cdr x)) (pair? (cadr x)))
|
||||
(if (memq (car x) '(only except rename))
|
||||
(let* ((mod-name+imports (resolve-import (cadr x)))
|
||||
|
@ -93,13 +100,6 @@
|
|||
(if rename (cons (cadr rename) (from-id i)) i)))
|
||||
imp-ids)))))
|
||||
(error "invalid import modifier" x)))
|
||||
((and (eq? 'prefix (car x)) (symbol? (cadr x)) (list? (caddr x)))
|
||||
(let ((mod-name+imports (resolve-import (caddr x))))
|
||||
(cons (car mod-name+imports)
|
||||
(map (lambda (i)
|
||||
(cons (symbol-append (cadr x) (if (pair? i) (car i) i))
|
||||
(if (pair? i) (cdr i) i)))
|
||||
(cdr mod-name+imports)))))
|
||||
((find-module x)
|
||||
=> (lambda (mod) (cons x (%module-exports mod))))
|
||||
(else
|
||||
|
|
Loading…
Add table
Reference in a new issue