projects
/
kmrcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
r9058: disable attrib-class
[kmrcl.git]
/
io.lisp
diff --git
a/io.lisp
b/io.lisp
index d4c50ef6b28a5e93c960558ffc18fbbcf3b4fc55..6df15953c7b533c32a320a612c4b6481137a0a25 100644
(file)
--- a/
io.lisp
+++ b/
io.lisp
@@
-29,26
+29,33
@@
(write-string line strm)
(write-char #\newline strm))))))
(write-string line strm)
(write-char #\newline strm))))))
+(defun read-stream-to-string (in)
+ (with-output-to-string (out)
+ (let ((eof (gensym)))
+ (do ((line (read-line in nil eof)
+ (read-line in nil eof)))
+ ((eq line eof))
+ (format out "~A~%" line)))))
+
(defun read-file-to-string (file)
"Opens a reads a file. Returns the contents as a single string"
(with-output-to-string (out)
(with-open-file (in file :direction :input)
(defun read-file-to-string (file)
"Opens a reads a file. Returns the contents as a single string"
(with-output-to-string (out)
(with-open-file (in file :direction :input)
- (let ((eof (gensym)))
- (do ((line (read-line in nil eof)
- (read-line in nil eof)))
- ((eq line eof))
- (format out "~A~%" line))))))
-
+ (read-stream-to-string in))))
+
+(defun read-stream-to-strings (in)
+ (let ((lines '())
+ (eof (gensym)))
+ (do ((line (read-line in nil eof)
+ (read-line in nil eof)))
+ ((eq line eof))
+ (push line lines)))
+ (nreverse lines))
+
(defun read-file-to-strings (file)
"Opens a reads a file. Returns the contents as a list of strings"
(defun read-file-to-strings (file)
"Opens a reads a file. Returns the contents as a list of strings"
- (let ((lines '()))
- (with-open-file (in file :direction :input)
- (let ((eof (gensym)))
- (do ((line (read-line in nil eof)
- (read-line in nil eof)))
- ((eq line eof))
- (push line lines)))
- (nreverse lines))))
+ (with-open-file (in file :direction :input)
+ (read-stream-to-strings in)))
(defun file-subst (old new file1 file2)
(with-open-file (in file1 :direction :input)
(defun file-subst (old new file1 file2)
(with-open-file (in file1 :direction :input)