added set-prefix

svn: r15440
This commit is contained in:
Eli Barzilay 2009-07-14 03:33:38 +00:00
parent ad784971f7
commit b7b143120b
2 changed files with 8 additions and 2 deletions

View File

@ -137,12 +137,17 @@
(set-mcar! pfxs npfx) (set-mcdr! pfxs 0)
(for-each loop c)
(set-mcar! pfxs pfx) (set-mcdr! pfxs lpfx))]
[(prefix)
[(prefix) ; maybe call this `add-prefix'?
(let* ([pfx (mcar pfxs)] [lpfx (mcdr pfxs)]
[npfx (pfx+ (pfx+col (pfx+ pfx lpfx)) (car c))])
(set-mcar! pfxs npfx) (set-mcdr! pfxs 0)
(for-each loop (cdr c))
(set-mcar! pfxs pfx) (set-mcdr! pfxs lpfx))]
[(set-prefix)
(let ([pfx (mcar pfxs)] [lpfx (mcdr pfxs)])
(set-mcar! pfxs (car c)) (set-mcdr! pfxs 0)
(for-each loop (cdr c))
(set-mcar! pfxs pfx) (set-mcdr! pfxs lpfx))]
[(with-writer)
(let ([old write])
(set! write (or (car c) write-string))
@ -195,6 +200,7 @@
(define/provide-special (disable-prefix))
(define/provide-special (restore-prefix))
(define/provide-special (prefix pfx))
(define/provide-special (set-prefix pfx))
(define/provide-special (with-writer writer))
(define make-spaces ; (efficiently)

View File

@ -1077,7 +1077,7 @@ module's text does. If you find yourself in such a situation, it is
better to switch to a Scheme-with-@"@"-expressions file as shown
above.)
@;FIXME: add more text on `restore-prefix', and on `with-writer'
@;FIXME: add more text on `restore-prefix', `set-prefix', `with-writer'
@;FIXME: add this to the reference section
@;@defform[(include filename)]{