* Added buffer-mode and buffer-mode?

This commit is contained in:
Abdulaziz Ghuloum 2007-10-11 23:21:55 -04:00
parent aafecc9cfb
commit 4649598a7e
5 changed files with 65 additions and 57 deletions

Binary file not shown.

View File

@ -1,10 +1,11 @@
(library (ikarus codecs)
(export latin-1-codec utf-8-codec utf-16-codec native-eol-style
make-transcoder native-transcoder)
make-transcoder native-transcoder buffer-mode?)
(import
(except (ikarus) latin-1-codec utf-8-codec utf-16-codec
native-eol-style make-transcoder native-transcoder)
native-eol-style make-transcoder native-transcoder
buffer-mode?)
(ikarus system $transcoders))
(define (latin-1-codec) 'latin-1-codec)
(define (utf-8-codec) 'utf-8-codec)
@ -61,5 +62,8 @@
(define (native-transcoder)
(make-transcoder 'utf-8-codec 'none 'replace))
(define (buffer-mode? x)
(and (memq x '(none line block)) #t))
)

View File

@ -81,57 +81,58 @@
"ikarus.main.ss"))
(define ikarus-system-macros
'([define (define)]
[define-syntax (define-syntax)]
[module (module)]
[begin (begin)]
[import (import)]
[set! (set!)]
[let-syntax (let-syntax)]
[letrec-syntax (letrec-syntax)]
[foreign-call (core-macro . foreign-call)]
[quote (core-macro . quote)]
[syntax-case (core-macro . syntax-case)]
[syntax (core-macro . syntax)]
[lambda (core-macro . lambda)]
[case-lambda (core-macro . case-lambda)]
[type-descriptor (core-macro . type-descriptor)]
[letrec (core-macro . letrec)]
[letrec* (core-macro . letrec*)]
[if (core-macro . if)]
[when (core-macro . when)]
[unless (core-macro . unless)]
[parameterize (core-macro . parameterize)]
[case (core-macro . case)]
[let-values (core-macro . let-values)]
[define-record (macro . define-record)]
[include (macro . include)]
[syntax-rules (macro . syntax-rules)]
[quasiquote (macro . quasiquote)]
[quasisyntax (macro . quasisyntax)]
[with-syntax (macro . with-syntax)]
[identifier-syntax (macro . identifier-syntax)]
[let (macro . let)]
[let* (macro . let*)]
[cond (macro . cond)]
[do (macro . do)]
[and (macro . and)]
[or (macro . or)]
[time (macro . time)]
[delay (macro . delay)]
[endianness (macro . endianness)]
[assert (macro . assert)]
[... (macro . ...)]
[=> (macro . =>)]
[else (macro . else)]
[_ (macro . _)]
[unquote (macro . unquote)]
[unquote-splicing (macro . unquote-splicing)]
[unsyntax (macro . unsyntax)]
[unsyntax-splicing (macro . unsyntax-splicing)]
[trace-lambda (macro . trace-lambda)]
[trace-define (macro . trace-define)]
[eol-style (macro . eol-style)]
'([define (define)]
[define-syntax (define-syntax)]
[module (module)]
[begin (begin)]
[import (import)]
[set! (set!)]
[let-syntax (let-syntax)]
[letrec-syntax (letrec-syntax)]
[foreign-call (core-macro . foreign-call)]
[quote (core-macro . quote)]
[syntax-case (core-macro . syntax-case)]
[syntax (core-macro . syntax)]
[lambda (core-macro . lambda)]
[case-lambda (core-macro . case-lambda)]
[type-descriptor (core-macro . type-descriptor)]
[letrec (core-macro . letrec)]
[letrec* (core-macro . letrec*)]
[if (core-macro . if)]
[when (core-macro . when)]
[unless (core-macro . unless)]
[parameterize (core-macro . parameterize)]
[case (core-macro . case)]
[let-values (core-macro . let-values)]
[define-record (macro . define-record)]
[include (macro . include)]
[syntax-rules (macro . syntax-rules)]
[quasiquote (macro . quasiquote)]
[quasisyntax (macro . quasisyntax)]
[with-syntax (macro . with-syntax)]
[identifier-syntax (macro . identifier-syntax)]
[let (macro . let)]
[let* (macro . let*)]
[cond (macro . cond)]
[do (macro . do)]
[and (macro . and)]
[or (macro . or)]
[time (macro . time)]
[delay (macro . delay)]
[endianness (macro . endianness)]
[assert (macro . assert)]
[... (macro . ...)]
[=> (macro . =>)]
[else (macro . else)]
[_ (macro . _)]
[unquote (macro . unquote)]
[unquote-splicing (macro . unquote-splicing)]
[unsyntax (macro . unsyntax)]
[unsyntax-splicing (macro . unsyntax-splicing)]
[trace-lambda (macro . trace-lambda)]
[trace-define (macro . trace-define)]
[eol-style (macro . eol-style)]
[buffer-mode (macro . buffer-mode)]
[error-handling-mode (macro . error-handling-mode)]
))
@ -924,8 +925,8 @@
[with-exception-handler r ex]
[guard r ex]
[binary-port? r ip]
[buffer-mode r ip]
[buffer-mode? r ip]
[buffer-mode i r ip]
[buffer-mode? i r ip]
[bytevector->string r ip]
[call-with-bytevector-output-port r ip]
[call-with-port r ip]

View File

@ -1917,6 +1917,9 @@
((error-handling-mode)
(lambda (x)
(symbol-macro x '(ignore raise replace))))
((buffer-mode)
(lambda (x)
(symbol-macro x '(none line block))))
((... => _ else unquote unquote-splicing
unsyntax unsyntax-splicing)
incorrect-usage-macro)

View File

@ -496,8 +496,8 @@
[guard X ex]
;;;
[binary-port? S ip]
[buffer-mode S ip]
[buffer-mode? S ip]
[buffer-mode C ip]
[buffer-mode? C ip]
[bytevector->string S ip]
[call-with-bytevector-output-port S ip]
[call-with-port S ip]