r4823: Auto commit for Debian build
[kmrcl.git] / buff-input.lisp
index 9072fb9269df527356099653b56fac126ad80bbd..3d678431776039b30db330cb0588bc26c85496da 100644 (file)
@@ -7,7 +7,7 @@
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Apr 2000
 ;;;;
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Apr 2000
 ;;;;
-;;;; $Id: buff-input.lisp,v 1.3 2002/10/10 16:23:48 kevin Exp $
+;;;; $Id: buff-input.lisp,v 1.7 2003/05/06 01:45:44 kevin Exp $
 ;;;;
 ;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg
 ;;;;
 ;;;;
 ;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg
 ;;;;
@@ -18,7 +18,8 @@
 
 (in-package :kmrcl)
 
 
 (in-package :kmrcl)
 
-(declaim (optimize (speed 3) (safety 0) (space 0) (debug 0)))
+(eval-when (:compile-toplevel)
+  (declaim (optimize (speed 3) (safety 0) (space 0) (debug 0))))
 
 (defconstant +max-field+ 10000)
 (defconstant +max-fields-per-line+ 20)
 
 (defconstant +max-field+ 10000)
 (defconstant +max-fields-per-line+ 20)
@@ -39,7 +40,8 @@
       (setf (aref bufs i) (make-array max-field-len :element-type 'character :fill-pointer 0 :adjustable nil)))
     bufs))
 
       (setf (aref bufs i) (make-array max-field-len :element-type 'character :fill-pointer 0 :adjustable nil)))
     bufs))
 
-(defun read-buffered-fields (fields strm &optional (field-delim +field-delim+))
+(defun read-buffered-fields (fields strm &optional (field-delim +field-delim+)
+                            (eof 'eof))
   "Read a line from a stream into a field buffers"
   (declare (type base-char field-delim)
           (type vector fields))
   "Read a line from a stream into a field buffers"
   (declare (type base-char field-delim)
           (type vector fields))
@@ -47,7 +49,7 @@
   (do ((ifield 0 (1+ ifield))
        (linedone nil)
        (eof nil))
   (do ((ifield 0 (1+ ifield))
        (linedone nil)
        (eof nil))
-      (linedone (if eof 'eof fields))
+      (linedone (if eof eof fields))
     (declare (type fixnum ifield)
             (type boolean linedone eof))
     (let ((field (aref fields ifield)))
     (declare (type fixnum ifield)
             (type boolean linedone eof))
     (let ((field (aref fields ifield)))
@@ -87,9 +89,6 @@
   (buffers)
   (field-lengths))
 
   (buffers)
   (field-lengths))
 
-(defmethod print-object ((f field-buffers) s)
-  (format s "#<~d>~%" (field-buffers-nfields f)))
-   
 (defun make-fields-buffer2 (&optional (max-fields +max-fields-per-line+) 
                                   (max-field-len +max-field+))
   (let ((bufs (make-array max-fields :element-type 'vector :fill-pointer nil :adjustable nil))
 (defun make-fields-buffer2 (&optional (max-fields +max-fields-per-line+) 
                                   (max-field-len +max-field+))
   (let ((bufs (make-array max-fields :element-type 'vector :fill-pointer nil :adjustable nil))