use "anonymous-module" for modules without a source file

svn: r17228
This commit is contained in:
Eli Barzilay 2009-12-06 10:46:05 +00:00
parent 1a12497bc1
commit f83bf42796
2 changed files with 14 additions and 9 deletions

View File

@ -190,7 +190,7 @@
(let-values ([(base name dir?) (split-path p-name)]) (let-values ([(base name dir?) (split-path p-name)])
(string->symbol (string->symbol
(path->string (path-replace-suffix name #"")))) (path->string (path-replace-suffix name #""))))
'page)] 'anonymous-module)]
[tag-src (lambda (v) [tag-src (lambda (v)
(if stx? (if stx?
(datum->syntax (datum->syntax

View File

@ -20,7 +20,8 @@
;; plain version ;; plain version
(module r0 syntax/module-reader scheme/base) (module r0 syntax/module-reader scheme/base)
(test-both '(r0) "#reader '~s (define FoO #:bAr)" (test-both '(r0) "#reader '~s (define FoO #:bAr)"
'(module page scheme/base (#%module-begin (define FoO #:bAr)))) '(module anonymous-module scheme/base
(#%module-begin (define FoO #:bAr))))
;; using a simple wrapper to get a case-insensitive reader ;; using a simple wrapper to get a case-insensitive reader
(module r1 syntax/module-reader scheme/base (module r1 syntax/module-reader scheme/base
@ -35,7 +36,8 @@
(parameterize ([read-case-sensitive #f]) (apply reader args)))) (parameterize ([read-case-sensitive #f]) (apply reader args))))
;; ;;
(test-both '(r1 r2 r3) "#reader '~s (define FoO #:bAr)" (test-both '(r1 r2 r3) "#reader '~s (define FoO #:bAr)"
'(module page scheme/base (#%module-begin (define foo #:bar)))) '(module anonymous-module scheme/base
(#%module-begin (define foo #:bar))))
;; add something to the result ;; add something to the result
(module r4 syntax/module-reader zzz (module r4 syntax/module-reader zzz
@ -45,7 +47,8 @@
#:wrapper1 (lambda (t stx?) (cons (if stx? #'foo 'foo) (t)))) #:wrapper1 (lambda (t stx?) (cons (if stx? #'foo 'foo) (t))))
;; ;;
(test-both '(r4 r5) "#reader '~s (define foo #:bar)" (test-both '(r4 r5) "#reader '~s (define foo #:bar)"
'(module page zzz (#%module-begin foo (define foo #:bar)))) '(module anonymous-module zzz
(#%module-begin foo (define foo #:bar))))
;; make an empty module, after reading the contents ;; make an empty module, after reading the contents
(module r6 syntax/module-reader zzz (module r6 syntax/module-reader zzz
@ -57,15 +60,15 @@
(module r8 syntax/module-reader whatever (module r8 syntax/module-reader whatever
#:wrapper2 (lambda (in rd) #:wrapper2 (lambda (in rd)
(if (syntax? (rd in)) (if (syntax? (rd in))
#'(module page zzz (#%module-begin)) #'(module anonymous-module zzz (#%module-begin))
'(module page zzz (#%module-begin))))) '(module anonymous-module zzz (#%module-begin)))))
;; the same, the easy way ;; the same, the easy way
(module r9 syntax/module-reader (module r9 syntax/module-reader
#:language (lambda () 'zzz) #:language (lambda () 'zzz)
#:wrapper1 (lambda (t) '())) #:wrapper1 (lambda (t) '()))
;; ;;
(test-both '(r6 r7 r8 r9) "#reader '~s (define foo #:bar)" (test-both '(r6 r7 r8 r9) "#reader '~s (define foo #:bar)"
'(module page zzz (#%module-begin))) '(module anonymous-module zzz (#%module-begin)))
;; a module that uses the scribble syntax with a specified language ;; a module that uses the scribble syntax with a specified language
(module r10 syntax/module-reader -ignored- (module r10 syntax/module-reader -ignored-
@ -91,9 +94,11 @@
(require scribble/reader)) (require scribble/reader))
;; ;;
(test-both '(r10 r11) "#reader '~s scheme/base (define foo 1)" (test-both '(r10 r11) "#reader '~s scheme/base (define foo 1)"
'(module page scheme/base (#%module-begin (define foo 1)))) '(module anonymous-module scheme/base
(#%module-begin (define foo 1))))
(test-both '(r10 r11) "#reader '~s scheme/base @define[foo]{one}" (test-both '(r10 r11) "#reader '~s scheme/base @define[foo]{one}"
'(module page scheme/base (#%module-begin (define foo "one")))) '(module anonymous-module scheme/base
(#%module-begin (define foo "one"))))
;; ---------------------------------------- ;; ----------------------------------------