minor fix to string-input-ports

This commit is contained in:
Abdulaziz Ghuloum 2007-12-10 09:28:48 -05:00
parent 1ecadc0ce5
commit 921999a3a2
6 changed files with 21 additions and 74 deletions

View File

@ -761,7 +761,7 @@
(let ([n (read! str 0 (string-length str))])
(unless (fixnum? n)
(error who "invalid return value from read!" n))
(unless (<= 0 n (fxsub1 (string-length str)))
(unless (<= 0 n (string-length str))
(error who "return value from read! is out of range" n))
($set-port-index! p 0)
($set-port-size! p n)
@ -811,7 +811,7 @@
(let ([n (read! str 0 (string-length str))])
(unless (fixnum? n)
(error who "invalid return value from read!" n))
(unless (<= 0 n (fxsub1 (string-length str)))
(unless (<= 0 n (string-length str))
(error who "return value from read! is out of range" n))
($set-port-size! p n)
(cond

View File

@ -1 +1 @@
1205
1207

View File

@ -1,53 +0,0 @@
(library (F)
(export f)
(import (ikarus))
(define f
(lambda (x) 12))
(printf "F invoked\n"))
(library (G)
(export)
(import (ikarus) (F))
(define-syntax t f)
(printf "G invoked: f=~s\n" t))
(library (Q)
(export foo)
(import (ikarus))
(define-record foo (bar baz)))
(library (R)
(export)
(import (ikarus) (Q))
(printf "RTD=~s\n" (type-descriptor foo)))
(invoke (R))
(library (F0)
(export f)
(import (ikarus))
(define g 17)
(define-syntax f
(lambda (x) #'h))
(define-syntax h
(lambda (x) #'g))
(printf "F0 invoked\n"))
;(library (F0 client)
; (export)
; (import (ikarus) (F0))
; (unless (= (f) 17)
; (error #f "F0 client"))
; (printf "F0 client ok\n"))
(library (F0 client)
(export)
(import (ikarus) (F0))
(f))
(invoke (F0 client))

View File

@ -7,7 +7,7 @@
(define (test1 x prefix radix)
(let ([s (string-append prefix
(number->string x radix))])
(assert (equal? x (read (open-input-string s))))))
(assert (equal? x (read (open-string-input-port s))))))
(test1 x "#x" 16)
(test1 x "#o" 8)
(test1 x "#b" 2))

View File

@ -6,11 +6,11 @@
(define-tests test-input-ports
[eof-object?
(get-line (open-input-string ""))]
(get-line (open-string-input-port ""))]
[(lambda (x) (equal? x "abcd"))
(get-line (open-input-string "abcd"))]
(get-line (open-string-input-port "abcd"))]
[(lambda (x) (equal? x ""))
(get-line (open-input-string "\nabcd"))]
(get-line (open-string-input-port "\nabcd"))]
[(lambda (x) (equal? x "abcd"))
(get-line (open-input-string "abcd\nefg"))]))
(get-line (open-string-input-port "abcd\nefg"))]))

View File

@ -6,7 +6,7 @@
(lambda (str)
(lambda (n?)
(and (number? n?)
(= (with-input-from-string str read) n?)))))
(= (read (open-string-input-port str)) n?)))))
(define-syntax reader-tests
(syntax-rules ()
@ -75,29 +75,29 @@
(define-tests test-char-syntax
[(lambda (x) (= (char->integer x) #x0))
(read (open-input-string "#\\nul"))]
(read (open-string-input-port "#\\nul"))]
[(lambda (x) (= (char->integer x) #x7))
(read (open-input-string "#\\alarm"))]
(read (open-string-input-port "#\\alarm"))]
[(lambda (x) (= (char->integer x) #x8))
(read (open-input-string "#\\backspace"))]
(read (open-string-input-port "#\\backspace"))]
[(lambda (x) (= (char->integer x) #x9))
(read (open-input-string "#\\tab"))]
(read (open-string-input-port "#\\tab"))]
[(lambda (x) (= (char->integer x) #xA))
(read (open-input-string "#\\linefeed"))]
(read (open-string-input-port "#\\linefeed"))]
[(lambda (x) (= (char->integer x) #xA))
(read (open-input-string "#\\newline"))]
(read (open-string-input-port "#\\newline"))]
[(lambda (x) (= (char->integer x) #xB))
(read (open-input-string "#\\vtab"))]
(read (open-string-input-port "#\\vtab"))]
[(lambda (x) (= (char->integer x) #xC))
(read (open-input-string "#\\page"))]
(read (open-string-input-port "#\\page"))]
[(lambda (x) (= (char->integer x) #xD))
(read (open-input-string "#\\return"))]
(read (open-string-input-port "#\\return"))]
[(lambda (x) (= (char->integer x) #x1B))
(read (open-input-string "#\\esc"))]
(read (open-string-input-port "#\\esc"))]
[(lambda (x) (= (char->integer x) #x20))
(read (open-input-string "#\\space"))]
(read (open-string-input-port "#\\space"))]
[(lambda (x) (= (char->integer x) #x7F))
(read (open-input-string "#\\delete"))])
(read (open-string-input-port "#\\delete"))])
)