git/CSV/commit/374842de191e56f2f0f5e14100f093846068aaca.html (2223 bytes)
1 <!DOCTYPE html> 2 <html lang="en"><head><meta charset="UTF-8" /> 3 <meta name="viewport" content="width=device-width, initial-scale=1" /> 4 <title>CSV 374842de - Recently Written</title> 5 <link rel="stylesheet" href="../../stagit.css" /> 6 </head><body> 7 <div id="top"><a href="../../../index.html">Recently Written</a> · <a href="../../index.html">git</a></div> 8 <h1>CSV</h1><span class="desc">Convert CSV (in a reader macro, or in a file) in to Lisp lists.</span><p class="url">git clone https://github.com/equwal/CSV</p><p><a href="../../CSV/index.html">Log</a> | <a href="../../CSV/files.html">Files</a> | <a href="../../CSV/refs.html">Refs</a></p><hr/> 9 <div id="content"> 10 <pre>commit 374842de191e56f2f0f5e14100f093846068aaca 11 Spenser Truex <spensertruexonline@gmail.com> 12 2019-01-07 11:55:07 -0800 13 14 Fix quoting bug 15 16 </pre><pre> csv.lisp | 13 ++++++------- 17 1 file changed, 6 insertions(+), 7 deletions(-) 18 </pre><pre>diff --git a/csv.lisp b/csv.lisp 19 index 244b6e3..7665baf 100644 20 --- a/csv.lisp 21 +++ b/csv.lisp 22 <span class="h">@@ -45,13 +45,12 @@</span> 23 (inner (subseq str (1+ res)) (push (subseq str 0 res) acc!)))))) 24 (inner str nil))) 25 (make-reader my-csv (stream #\# #\!) 26 <span class="d">- (macrolet ((once (&body body) ``',,@body))</span> 27 <span class="d">- (do ((prev #1= (read-char stream nil nil) curr)</span> 28 <span class="d">- (curr #1# #1#)</span> 29 <span class="d">- (str (make-array 0 :adjustable t :element-type 'character)</span> 30 <span class="d">- (switches prev curr str)))</span> 31 <span class="d">- ((and (char= curr #\#)</span> 32 <span class="d">- (char= prev #\!)) (once (splice (switches nil nil str)))))))</span> 33 <span class="a">+ (do ((prev #1= (read-char stream nil nil) curr)</span> 34 <span class="a">+ (curr #1# #1#)</span> 35 <span class="a">+ (str (make-array 0 :adjustable t :element-type 'character)</span> 36 <span class="a">+ (switches prev curr str)))</span> 37 <span class="a">+ ((and (char= curr #\#)</span> 38 <span class="a">+ (char= prev #\!)) (splice (switches nil nil str)))))</span> 39 (defun read-to-string (stream) 40 (with-output-to-string (s) 41 (dolines (line stream)</pre> 42 </div></body></html>