|
13 | 13 | ((format-control :accessor format-control :initarg :format-control :initform nil) |
14 | 14 | (format-args :accessor format-args :initarg :format-args :initform nil)) |
15 | 15 | (:report (lambda (c s &aux (ctrl (format-control c))) |
16 | | - (typecase ctrl |
| 16 | + (typecase ctrl |
17 | 17 | (condition |
18 | 18 | (format s "CSV-PARSE-ERROR: internal-error ~A" ctrl)) |
19 | 19 | (string |
@@ -245,10 +245,10 @@ always-quote: Defaults to *always-quote*" |
245 | 245 | ;; can't bind values in a `with`, so listify and destructure |
246 | 246 | (with (,stream ,opened?) = (multiple-value-list |
247 | 247 | (%in-stream ,input))) |
248 | | - (with *separator* = (or ,separator *separator*)) |
249 | | - (with *quote* = (or ,quote *quote*)) |
250 | | - (with *quote-escape* = (or ,escaped-quote *quote-escape*)) |
251 | | - (with ,csv-reader = (make-default-csv-reader)) |
| 248 | + (with ,csv-reader = (let ((*separator* (or ,separator *separator*)) |
| 249 | + (*quote* (or ,quote *quote*)) |
| 250 | + (*quote-escape* (or ,escaped-quote *quote-escape*))) |
| 251 | + (make-default-csv-reader))) |
252 | 252 | (finally-protected |
253 | 253 | (when (and ,stream ,opened?) |
254 | 254 | (close ,stream))) |
@@ -349,7 +349,7 @@ body: body of the macro" |
349 | 349 | (stream-or-string |
350 | 350 | &rest all-keys |
351 | 351 | &key |
352 | | - csv-reader row-fn map-fn data-map-fn sample skip-first-p |
| 352 | + csv-reader row-fn map-fn data-map-fn sample skip-first-p |
353 | 353 | ((:separator *separator*) *separator*) |
354 | 354 | ((:quote *quote*) *quote*) |
355 | 355 | ((:escape *quote-escape*) *quote-escape*) |
|
0 commit comments