From 050b353f345c4f3029677a25dec45219645e4f4d Mon Sep 17 00:00:00 2001 From: Alex Shinn Date: Tue, 25 Jun 2013 22:22:01 +0900 Subject: [PATCH] Adding missing eof-object procedure. Fixes issue #183. --- lib/scheme/base.sld | 2 +- lib/scheme/extras.scm | 2 ++ tests/r7rs-tests.scm | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/scheme/base.sld b/lib/scheme/base.sld index dcfbbd51..db087648 100644 --- a/lib/scheme/base.sld +++ b/lib/scheme/base.sld @@ -21,7 +21,7 @@ close-input-port close-output-port close-port complex? cond cond-expand cons current-error-port current-input-port current-output-port define define-record-type define-syntax define-values denominator do - dynamic-wind else eof-object? eq? equal? eqv? error + dynamic-wind else eof-object? eof-object eq? equal? eqv? error error-object-irritants error-object-message error-object? even? exact exact-integer-sqrt exact-integer? exact? expt features file-error? floor diff --git a/lib/scheme/extras.scm b/lib/scheme/extras.scm index 43335923..93e6c3c5 100644 --- a/lib/scheme/extras.scm +++ b/lib/scheme/extras.scm @@ -97,6 +97,8 @@ (close-port port) res)) +(define (eof-object) (read-char (open-input-string ""))) + (define (read-bytevector n . o) (if (zero? n) #u8() diff --git a/tests/r7rs-tests.scm b/tests/r7rs-tests.scm index 5435bb1a..6f959523 100644 --- a/tests/r7rs-tests.scm +++ b/tests/r7rs-tests.scm @@ -1526,6 +1526,7 @@ (close-port out) (output-port-open? out))) +(test #t (eof-object? (eof-object))) (test #t (eof-object? (read (open-input-string "")))) (test #t (char-ready? (open-input-string "42"))) (test 42 (read (open-input-string " 42 ")))