csv_decision 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/README.md +26 -2
  4. data/csv_decision.gemspec +1 -1
  5. data/doc/CSVDecision/CellValidationError.html +2 -2
  6. data/doc/CSVDecision/Columns/Default.html +203 -23
  7. data/doc/CSVDecision/Columns/Dictionary.html +118 -25
  8. data/doc/CSVDecision/Columns.html +213 -31
  9. data/doc/CSVDecision/Data.html +1 -1
  10. data/doc/CSVDecision/Decide.html +1 -1
  11. data/doc/CSVDecision/Decision.html +1 -1
  12. data/doc/CSVDecision/Defaults.html +291 -0
  13. data/doc/CSVDecision/Dictionary/Entry.html +584 -47
  14. data/doc/CSVDecision/Dictionary.html +20 -20
  15. data/doc/CSVDecision/Error.html +2 -2
  16. data/doc/CSVDecision/FileError.html +1 -1
  17. data/doc/CSVDecision/Header.html +110 -33
  18. data/doc/CSVDecision/Input.html +1 -1
  19. data/doc/CSVDecision/Load.html +1 -1
  20. data/doc/CSVDecision/Matchers/Constant.html +12 -37
  21. data/doc/CSVDecision/Matchers/Function.html +1 -1
  22. data/doc/CSVDecision/Matchers/Guard.html +15 -13
  23. data/doc/CSVDecision/Matchers/Matcher.html +1 -1
  24. data/doc/CSVDecision/Matchers/Numeric.html +13 -21
  25. data/doc/CSVDecision/Matchers/Pattern.html +14 -14
  26. data/doc/CSVDecision/Matchers/Proc.html +1 -1
  27. data/doc/CSVDecision/Matchers/Range.html +13 -58
  28. data/doc/CSVDecision/Matchers/Symbol.html +1 -1
  29. data/doc/CSVDecision/Matchers.html +9 -9
  30. data/doc/CSVDecision/Options.html +1 -1
  31. data/doc/CSVDecision/Parse.html +90 -19
  32. data/doc/CSVDecision/Result.html +1 -1
  33. data/doc/CSVDecision/ScanRow.html +17 -17
  34. data/doc/CSVDecision/Table.html +50 -48
  35. data/doc/CSVDecision/TableValidationError.html +143 -0
  36. data/doc/CSVDecision/Validate.html +422 -0
  37. data/doc/CSVDecision.html +8 -8
  38. data/doc/_index.html +33 -1
  39. data/doc/class_list.html +1 -1
  40. data/doc/file.README.html +27 -3
  41. data/doc/index.html +27 -3
  42. data/doc/method_list.html +193 -89
  43. data/doc/top-level-namespace.html +1 -1
  44. data/lib/csv_decision/columns.rb +28 -27
  45. data/lib/csv_decision/defaults.rb +47 -0
  46. data/lib/csv_decision/dictionary.rb +104 -112
  47. data/lib/csv_decision/header.rb +13 -10
  48. data/lib/csv_decision/input.rb +53 -5
  49. data/lib/csv_decision/matchers/constant.rb +1 -2
  50. data/lib/csv_decision/matchers/guard.rb +3 -2
  51. data/lib/csv_decision/matchers/numeric.rb +4 -6
  52. data/lib/csv_decision/matchers/pattern.rb +6 -8
  53. data/lib/csv_decision/matchers/range.rb +1 -3
  54. data/lib/csv_decision/matchers.rb +7 -7
  55. data/lib/csv_decision/parse.rb +24 -3
  56. data/lib/csv_decision/scan_row.rb +16 -16
  57. data/lib/csv_decision/table.rb +3 -7
  58. data/lib/csv_decision/validate.rb +85 -0
  59. data/lib/csv_decision.rb +3 -1
  60. data/spec/csv_decision/columns_spec.rb +38 -22
  61. data/spec/csv_decision/examples_spec.rb +17 -0
  62. data/spec/csv_decision/matchers/range_spec.rb +0 -32
  63. data/spec/csv_decision/table_spec.rb +39 -0
  64. metadata +7 -2
@@ -127,7 +127,7 @@ table load time.</p>
127
127
  <li class="public ">
128
128
  <span class="summary_signature">
129
129
 
130
- <a href="#add_name-class_method" title="add_name (class method)">.<strong>add_name</strong>(columns:, name:, out: false) &#x21d2; {Symbol=&gt;Symbol} </a>
130
+ <a href="#add_name-class_method" title="add_name (class method)">.<strong>add_name</strong>(columns:, name:, out: false) &#x21d2; Hash{Symbol=&gt;[:in, Integer]} </a>
131
131
 
132
132
 
133
133
 
@@ -185,7 +185,7 @@ the header row.</p>
185
185
  <div class="method_details first">
186
186
  <h3 class="signature first" id="add_name-class_method">
187
187
 
188
- .<strong>add_name</strong>(columns:, name:, out: false) &#x21d2; <tt>{Symbol=&gt;Symbol}</tt>
188
+ .<strong>add_name</strong>(columns:, name:, out: false) &#x21d2; <tt>Hash{Symbol=&gt;[:in, Integer]}</tt>
189
189
 
190
190
 
191
191
 
@@ -263,7 +263,7 @@ the header row.</p>
263
263
  <li>
264
264
 
265
265
 
266
- <span class='type'>(<tt>{Symbol=&gt;Symbol}</tt>)</span>
266
+ <span class='type'>(<tt>Hash{Symbol=&gt;[:in, Integer]}</tt>)</span>
267
267
 
268
268
 
269
269
 
@@ -282,18 +282,18 @@ the header row.</p>
282
282
  <pre class="lines">
283
283
 
284
284
 
285
- 52
286
- 53
287
- 54
288
- 55
289
- 56
290
- 57</pre>
285
+ 111
286
+ 112
287
+ 113
288
+ 114
289
+ 115
290
+ 116</pre>
291
291
  </td>
292
292
  <td>
293
- <pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 52</span>
293
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 111</span>
294
294
 
295
295
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_add_name'>add_name</span><span class='lparen'>(</span><span class='label'>columns:</span><span class='comma'>,</span> <span class='label'>name:</span><span class='comma'>,</span> <span class='label'>out:</span> <span class='kw'>false</span><span class='rparen'>)</span>
296
- <span class='id identifier rubyid_validate_name'>validate_name</span><span class='lparen'>(</span><span class='label'>columns:</span> <span class='id identifier rubyid_columns'>columns</span><span class='comma'>,</span> <span class='label'>name:</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='label'>out:</span> <span class='id identifier rubyid_out'>out</span><span class='rparen'>)</span>
296
+ <span class='const'><span class='object_link'><a href="Validate.html" title="CSVDecision::Validate (module)">Validate</a></span></span><span class='period'>.</span><span class='id identifier rubyid_name'><span class='object_link'><a href="Validate.html#name-class_method" title="CSVDecision::Validate.name (method)">name</a></span></span><span class='lparen'>(</span><span class='label'>columns:</span> <span class='id identifier rubyid_columns'>columns</span><span class='comma'>,</span> <span class='label'>name:</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='label'>out:</span> <span class='id identifier rubyid_out'>out</span><span class='rparen'>)</span>
297
297
 
298
298
  <span class='id identifier rubyid_columns'>columns</span><span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_out'>out</span> <span class='op'>?</span> <span class='id identifier rubyid_out'>out</span> <span class='op'>:</span> <span class='symbol'>:in</span>
299
299
  <span class='id identifier rubyid_columns'>columns</span>
@@ -372,16 +372,16 @@ the header row.</p>
372
372
  <pre class="lines">
373
373
 
374
374
 
375
- 38
376
- 39
377
- 40
378
- 41
379
- 42
380
- 43
381
- 44</pre>
375
+ 97
376
+ 98
377
+ 99
378
+ 100
379
+ 101
380
+ 102
381
+ 103</pre>
382
382
  </td>
383
383
  <td>
384
- <pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 38</span>
384
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 97</span>
385
385
 
386
386
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_build'>build</span><span class='lparen'>(</span><span class='label'>header:</span><span class='comma'>,</span> <span class='label'>dictionary:</span><span class='rparen'>)</span>
387
387
  <span class='id identifier rubyid_header'>header</span><span class='period'>.</span><span class='id identifier rubyid_each_with_index'>each_with_index</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_cell'>cell</span><span class='comma'>,</span> <span class='id identifier rubyid_index'>index</span><span class='op'>|</span>
@@ -400,7 +400,7 @@ the header row.</p>
400
400
  </div>
401
401
 
402
402
  <div id="footer">
403
- Generated on Sat Jan 6 20:03:01 2018 by
403
+ Generated on Sat Jan 13 10:02:46 2018 by
404
404
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
405
405
  0.9.12 (ruby-2.4.0).
406
406
  </div>
@@ -114,7 +114,7 @@
114
114
 
115
115
  </div><div id="subclasses">
116
116
  <h2>Direct Known Subclasses</h2>
117
- <p class="children"><span class='object_link'><a href="CellValidationError.html" title="CSVDecision::CellValidationError (class)">CellValidationError</a></span>, <span class='object_link'><a href="FileError.html" title="CSVDecision::FileError (class)">FileError</a></span></p>
117
+ <p class="children"><span class='object_link'><a href="CellValidationError.html" title="CSVDecision::CellValidationError (class)">CellValidationError</a></span>, <span class='object_link'><a href="FileError.html" title="CSVDecision::FileError (class)">FileError</a></span>, <span class='object_link'><a href="TableValidationError.html" title="CSVDecision::TableValidationError (class)">TableValidationError</a></span></p>
118
118
  </div>
119
119
 
120
120
 
@@ -129,7 +129,7 @@
129
129
  </div>
130
130
 
131
131
  <div id="footer">
132
- Generated on Sat Jan 6 20:03:01 2018 by
132
+ Generated on Sat Jan 13 10:02:46 2018 by
133
133
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
134
134
  0.9.12 (ruby-2.4.0).
135
135
  </div>
@@ -133,7 +133,7 @@
133
133
  </div>
134
134
 
135
135
  <div id="footer">
136
- Generated on Sat Jan 6 20:03:01 2018 by
136
+ Generated on Sat Jan 13 10:02:46 2018 by
137
137
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
138
138
  0.9.12 (ruby-2.4.0).
139
139
  </div>
@@ -122,7 +122,7 @@ table load time.</p>
122
122
  </div>
123
123
  </dt>
124
124
  <dd><pre class="code"><span class='tstring'><span class='regexp_beg'>%r{</span><span class='tstring_content'>
125
- \A(?&lt;type&gt;in|out|in/text|out/text|guard|if)
125
+ \A(?&lt;type&gt;in/text|in|out/text|out|guard|if|set/nil\?|set/blank\?|set)
126
126
  \s*:\s*(?&lt;name&gt;\S?.*)\z
127
127
  </span><span class='regexp_end'>}xi</span></span></pre></dd>
128
128
 
@@ -147,26 +147,6 @@ method name - note any spaces will have been replaced with underscores.</p>
147
147
  </dt>
148
148
  <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\\w[\\w:/!?]*</span><span class='tstring_end'>&quot;</span></span></pre></dd>
149
149
 
150
- <dt id="COLUMN_NAME_RE-constant" class="">COLUMN_NAME_RE =
151
- <div class="docstring">
152
- <div class="discussion">
153
- <p class="note private">
154
- <strong>This constant is part of a private API.</strong>
155
- You should avoid using this constant if possible, as it may be removed or be changed in the future.
156
- </p>
157
-
158
- <p>Regular expression for matching a column name.</p>
159
-
160
-
161
- </div>
162
- </div>
163
- <div class="tags">
164
-
165
-
166
- </div>
167
- </dt>
168
- <dd><pre class="code"><span class='const'><span class='object_link'><a href="Matchers.html" title="CSVDecision::Matchers (class)">Matchers</a></span></span><span class='period'>.</span><span class='id identifier rubyid_regexp'><span class='object_link'><a href="Matchers.html#regexp-class_method" title="CSVDecision::Matchers.regexp (method)">regexp</a></span></span><span class='lparen'>(</span><span class='const'>Header</span><span class='op'>::</span><span class='const'><span class='object_link'><a href="#COLUMN_NAME-constant" title="CSVDecision::Header::COLUMN_NAME (constant)">COLUMN_NAME</a></span></span><span class='rparen'>)</span></pre></dd>
169
-
170
150
  </dl>
171
151
 
172
152
 
@@ -186,6 +166,30 @@ method name - note any spaces will have been replaced with underscores.</p>
186
166
  <li class="public ">
187
167
  <span class="summary_signature">
188
168
 
169
+ <a href="#column_name%3F-class_method" title="column_name? (class method)">.<strong>column_name?</strong>(column_name) &#x21d2; Boolean </a>
170
+
171
+
172
+
173
+ </span>
174
+
175
+
176
+
177
+
178
+
179
+
180
+ <span class="private note title">private</span>
181
+
182
+
183
+ <span class="summary_desc"><div class='inline'>
184
+ <p>Return true if column name is valid.</p>
185
+ </div></span>
186
+
187
+ </li>
188
+
189
+
190
+ <li class="public ">
191
+ <span class="summary_signature">
192
+
189
193
  <a href="#row%3F-class_method" title="row? (class method)">.<strong>row?</strong>(row) &#x21d2; Boolean </a>
190
194
 
191
195
 
@@ -241,7 +245,80 @@ method name - note any spaces will have been replaced with underscores.</p>
241
245
 
242
246
 
243
247
  <div class="method_details first">
244
- <h3 class="signature first" id="row?-class_method">
248
+ <h3 class="signature first" id="column_name?-class_method">
249
+
250
+ .<strong>column_name?</strong>(column_name) &#x21d2; <tt>Boolean</tt>
251
+
252
+
253
+
254
+
255
+
256
+ </h3><div class="docstring">
257
+ <div class="discussion">
258
+ <p class="note private">
259
+ <strong>This method is part of a private API.</strong>
260
+ You should avoid using this method if possible, as it may be removed or be changed in the future.
261
+ </p>
262
+
263
+ <p>Return true if column name is valid.</p>
264
+
265
+
266
+ </div>
267
+ </div>
268
+ <div class="tags">
269
+ <p class="tag_title">Parameters:</p>
270
+ <ul class="param">
271
+
272
+ <li>
273
+
274
+ <span class='name'>column_name</span>
275
+
276
+
277
+ <span class='type'>(<tt>String</tt>)</span>
278
+
279
+
280
+
281
+ </li>
282
+
283
+ </ul>
284
+
285
+ <p class="tag_title">Returns:</p>
286
+ <ul class="return">
287
+
288
+ <li>
289
+
290
+
291
+ <span class='type'>(<tt>Boolean</tt>)</span>
292
+
293
+
294
+
295
+ </li>
296
+
297
+ </ul>
298
+
299
+ </div><table class="source_code">
300
+ <tr>
301
+ <td>
302
+ <pre class="lines">
303
+
304
+
305
+ 30
306
+ 31
307
+ 32</pre>
308
+ </td>
309
+ <td>
310
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/header.rb', line 30</span>
311
+
312
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_column_name?'>column_name?</span><span class='lparen'>(</span><span class='id identifier rubyid_column_name'>column_name</span><span class='rparen'>)</span>
313
+ <span class='const'>COLUMN_NAME_RE</span><span class='period'>.</span><span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='id identifier rubyid_column_name'>column_name</span><span class='rparen'>)</span>
314
+ <span class='kw'>end</span></pre>
315
+ </td>
316
+ </tr>
317
+ </table>
318
+ </div>
319
+
320
+ <div class="method_details ">
321
+ <h3 class="signature " id="row?-class_method">
245
322
 
246
323
  .<strong>row?</strong>(row) &#x21d2; <tt>Boolean</tt>
247
324
 
@@ -308,15 +385,15 @@ method name - note any spaces will have been replaced with underscores.</p>
308
385
  <pre class="lines">
309
386
 
310
387
 
311
- 35
312
- 36
313
- 37</pre>
388
+ 38
389
+ 39
390
+ 40</pre>
314
391
  </td>
315
392
  <td>
316
- <pre class="code"><span class="info file"># File 'lib/csv_decision/header.rb', line 35</span>
393
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/header.rb', line 38</span>
317
394
 
318
395
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_row?'>row?</span><span class='lparen'>(</span><span class='id identifier rubyid_row'>row</span><span class='rparen'>)</span>
319
- <span class='id identifier rubyid_row'>row</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_cell'>cell</span><span class='op'>|</span> <span class='id identifier rubyid_cell'>cell</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="#COLUMN_TYPE-constant" title="CSVDecision::Header::COLUMN_TYPE (constant)">COLUMN_TYPE</a></span></span><span class='rparen'>)</span> <span class='rbrace'>}</span>
396
+ <span class='id identifier rubyid_row'>row</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_cell'>cell</span><span class='op'>|</span> <span class='const'><span class='object_link'><a href="#COLUMN_TYPE-constant" title="CSVDecision::Header::COLUMN_TYPE (constant)">COLUMN_TYPE</a></span></span><span class='period'>.</span><span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='id identifier rubyid_cell'>cell</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
320
397
  <span class='kw'>end</span></pre>
321
398
  </td>
322
399
  </tr>
@@ -391,16 +468,16 @@ method name - note any spaces will have been replaced with underscores.</p>
391
468
  <pre class="lines">
392
469
 
393
470
 
394
- 44
395
- 45
396
- 46
397
471
  47
398
472
  48
399
473
  49
400
- 50</pre>
474
+ 50
475
+ 51
476
+ 52
477
+ 53</pre>
401
478
  </td>
402
479
  <td>
403
- <pre class="code"><span class="info file"># File 'lib/csv_decision/header.rb', line 44</span>
480
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/header.rb', line 47</span>
404
481
 
405
482
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_strip_empty_columns'>strip_empty_columns</span><span class='lparen'>(</span><span class='label'>rows:</span><span class='rparen'>)</span>
406
483
  <span class='id identifier rubyid_empty_cols'>empty_cols</span> <span class='op'>=</span> <span class='id identifier rubyid_empty_columns?'>empty_columns?</span><span class='lparen'>(</span><span class='label'>row:</span> <span class='id identifier rubyid_rows'>rows</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span><span class='rparen'>)</span>
@@ -419,7 +496,7 @@ method name - note any spaces will have been replaced with underscores.</p>
419
496
  </div>
420
497
 
421
498
  <div id="footer">
422
- Generated on Sat Jan 6 20:03:01 2018 by
499
+ Generated on Sat Jan 13 10:02:46 2018 by
423
500
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
424
501
  0.9.12 (ruby-2.4.0).
425
502
  </div>
@@ -297,7 +297,7 @@ column. Defaults to nil if the key is missing in the input hash.</p>
297
297
  </div>
298
298
 
299
299
  <div id="footer">
300
- Generated on Sat Jan 6 20:03:01 2018 by
300
+ Generated on Sat Jan 13 10:02:46 2018 by
301
301
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
302
302
  0.9.12 (ruby-2.4.0).
303
303
  </div>
@@ -281,7 +281,7 @@
281
281
  </div>
282
282
 
283
283
  <div id="footer">
284
- Generated on Sat Jan 6 20:03:01 2018 by
284
+ Generated on Sat Jan 13 10:02:46 2018 by
285
285
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
286
286
  0.9.12 (ruby-2.4.0).
287
287
  </div>
@@ -169,7 +169,7 @@ some type of function.</p>
169
169
  <li class="public ">
170
170
  <span class="summary_signature">
171
171
 
172
- <a href="#matches%3F-instance_method" title="#matches? (instance method)">#<strong>matches?</strong>(cell) &#x21d2; false, CSVDecision::Proc </a>
172
+ <a href="#matches%3F-instance_method" title="#matches? (instance method)">#<strong>matches?</strong>(cell) &#x21d2; Boolean </a>
173
173
 
174
174
 
175
175
 
@@ -347,7 +347,7 @@ some type of function.</p>
347
347
  <div class="method_details first">
348
348
  <h3 class="signature first" id="matches?-instance_method">
349
349
 
350
- #<strong>matches?</strong>(cell) &#x21d2; <tt>false</tt>, <tt>CSVDecision::Proc</tt>
350
+ #<strong>matches?</strong>(cell) &#x21d2; <tt>Boolean</tt>
351
351
 
352
352
 
353
353
 
@@ -364,47 +364,22 @@ some type of function.</p>
364
364
 
365
365
  <pre class="code ruby"><code class="ruby">otherwise return false.</code></pre>
366
366
 
367
+ <p>(see Matcher#matches?)</p>
368
+
367
369
 
368
370
  </div>
369
371
  </div>
370
372
  <div class="tags">
371
- <p class="tag_title">Parameters:</p>
372
- <ul class="param">
373
-
374
- <li>
375
-
376
- <span class='name'>cell</span>
377
-
378
-
379
- <span class='type'>(<tt>String</tt>)</span>
380
-
381
-
382
-
383
- &mdash;
384
- <div class='inline'>
385
- <p>Data row cell.</p>
386
- </div>
387
-
388
- </li>
389
373
 
390
- </ul>
391
-
392
374
  <p class="tag_title">Returns:</p>
393
375
  <ul class="return">
394
376
 
395
377
  <li>
396
378
 
397
379
 
398
- <span class='type'>(<tt>false</tt>, <tt>CSVDecision::Proc</tt>)</span>
399
-
380
+ <span class='type'>(<tt>Boolean</tt>)</span>
400
381
 
401
382
 
402
- &mdash;
403
- <div class='inline'>
404
- <p>Returns false if this cell is not a match; otherwise returns the
405
- <code>CSVDecision::Proc</code> object indicating if this is a constant or
406
- some type of function.</p>
407
- </div>
408
383
 
409
384
  </li>
410
385
 
@@ -416,12 +391,12 @@ some type of function.</p>
416
391
  <pre class="lines">
417
392
 
418
393
 
394
+ 65
419
395
  66
420
- 67
421
- 68</pre>
396
+ 67</pre>
422
397
  </td>
423
398
  <td>
424
- <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/constant.rb', line 66</span>
399
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/constant.rb', line 65</span>
425
400
 
426
401
  <span class='kw'>def</span> <span class='id identifier rubyid_matches?'>matches?</span><span class='lparen'>(</span><span class='id identifier rubyid_cell'>cell</span><span class='rparen'>)</span>
427
402
  <span class='const'><span class='object_link'><a href="../Matchers.html" title="CSVDecision::Matchers (class)">Matchers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="" title="CSVDecision::Matchers::Constant (class)">Constant</a></span></span><span class='period'>.</span><span class='id identifier rubyid_matches?'><span class='object_link'><a href="#matches%3F-class_method" title="CSVDecision::Matchers::Constant.matches? (method)">matches?</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_cell'>cell</span><span class='rparen'>)</span>
@@ -479,12 +454,12 @@ some type of function.</p>
479
454
  <pre class="lines">
480
455
 
481
456
 
457
+ 70
482
458
  71
483
- 72
484
- 73</pre>
459
+ 72</pre>
485
460
  </td>
486
461
  <td>
487
- <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/constant.rb', line 71</span>
462
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/constant.rb', line 70</span>
488
463
 
489
464
  <span class='kw'>def</span> <span class='id identifier rubyid_outs?'>outs?</span>
490
465
  <span class='kw'>true</span>
@@ -499,7 +474,7 @@ some type of function.</p>
499
474
  </div>
500
475
 
501
476
  <div id="footer">
502
- Generated on Sat Jan 6 20:03:02 2018 by
477
+ Generated on Sat Jan 13 10:02:47 2018 by
503
478
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
504
479
  0.9.12 (ruby-2.4.0).
505
480
  </div>
@@ -501,7 +501,7 @@ some type of function.</p>
501
501
  </div>
502
502
 
503
503
  <div id="footer">
504
- Generated on Sat Jan 6 20:03:03 2018 by
504
+ Generated on Sat Jan 13 10:02:47 2018 by
505
505
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
506
506
  0.9.12 (ruby-2.4.0).
507
507
  </div>
@@ -355,15 +355,15 @@ some type of function.</p>
355
355
  <pre class="lines">
356
356
 
357
357
 
358
- 129
359
358
  130
360
359
  131
361
360
  132
362
361
  133
363
- 134</pre>
362
+ 134
363
+ 135</pre>
364
364
  </td>
365
365
  <td>
366
- <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/guard.rb', line 129</span>
366
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/guard.rb', line 130</span>
367
367
 
368
368
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_matches?'>matches?</span><span class='lparen'>(</span><span class='id identifier rubyid_cell'>cell</span><span class='rparen'>)</span>
369
369
  <span class='id identifier rubyid_proc'>proc</span> <span class='op'>=</span> <span class='id identifier rubyid_symbol_proc'>symbol_proc</span><span class='lparen'>(</span><span class='id identifier rubyid_cell'>cell</span><span class='rparen'>)</span>
@@ -407,14 +407,16 @@ some type of function.</p>
407
407
  50
408
408
  51
409
409
  52
410
- 53</pre>
410
+ 53
411
+ 54</pre>
411
412
  </td>
412
413
  <td>
413
414
  <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/guard.rb', line 50</span>
414
415
 
415
416
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_regexp_match'>regexp_match</span><span class='lparen'>(</span><span class='id identifier rubyid_symbol'>symbol</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='comma'>,</span> <span class='id identifier rubyid_hash'>hash</span><span class='rparen'>)</span>
416
- <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_hash'>hash</span><span class='lbracket'>[</span><span class='id identifier rubyid_symbol'>symbol</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span>
417
- <span class='const'><span class='object_link'><a href="../Matchers.html" title="CSVDecision::Matchers (class)">Matchers</a></span></span><span class='period'>.</span><span class='id identifier rubyid_regexp'><span class='object_link'><a href="../Matchers.html#regexp-class_method" title="CSVDecision::Matchers.regexp (method)">regexp</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='id identifier rubyid_hash'>hash</span><span class='lbracket'>[</span><span class='id identifier rubyid_symbol'>symbol</span><span class='rbracket'>]</span><span class='rparen'>)</span>
417
+ <span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>unless</span> <span class='id identifier rubyid_value'>value</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span>
418
+ <span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='id identifier rubyid_hash'>hash</span><span class='lbracket'>[</span><span class='id identifier rubyid_symbol'>symbol</span><span class='rbracket'>]</span>
419
+ <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='const'><span class='object_link'><a href="../Matchers.html" title="CSVDecision::Matchers (class)">Matchers</a></span></span><span class='period'>.</span><span class='id identifier rubyid_regexp'><span class='object_link'><a href="../Matchers.html#regexp-class_method" title="CSVDecision::Matchers.regexp (method)">regexp</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
418
420
  <span class='kw'>end</span></pre>
419
421
  </td>
420
422
  </tr>
@@ -542,12 +544,12 @@ some type of function.</p>
542
544
  <pre class="lines">
543
545
 
544
546
 
545
- 138
546
547
  139
547
- 140</pre>
548
+ 140
549
+ 141</pre>
548
550
  </td>
549
551
  <td>
550
- <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/guard.rb', line 138</span>
552
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/guard.rb', line 139</span>
551
553
 
552
554
  <span class='kw'>def</span> <span class='id identifier rubyid_matches?'>matches?</span><span class='lparen'>(</span><span class='id identifier rubyid_cell'>cell</span><span class='rparen'>)</span>
553
555
  <span class='const'><span class='object_link'><a href="" title="CSVDecision::Matchers::Guard (class)">Guard</a></span></span><span class='period'>.</span><span class='id identifier rubyid_matches?'><span class='object_link'><a href="#matches%3F-class_method" title="CSVDecision::Matchers::Guard.matches? (method)">matches?</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_cell'>cell</span><span class='rparen'>)</span>
@@ -605,12 +607,12 @@ some type of function.</p>
605
607
  <pre class="lines">
606
608
 
607
609
 
608
- 143
609
610
  144
610
- 145</pre>
611
+ 145
612
+ 146</pre>
611
613
  </td>
612
614
  <td>
613
- <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/guard.rb', line 143</span>
615
+ <pre class="code"><span class="info file"># File 'lib/csv_decision/matchers/guard.rb', line 144</span>
614
616
 
615
617
  <span class='kw'>def</span> <span class='id identifier rubyid_outs?'>outs?</span>
616
618
  <span class='kw'>true</span>
@@ -625,7 +627,7 @@ some type of function.</p>
625
627
  </div>
626
628
 
627
629
  <div id="footer">
628
- Generated on Sat Jan 6 20:03:02 2018 by
630
+ Generated on Sat Jan 13 10:02:47 2018 by
629
631
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
630
632
  0.9.12 (ruby-2.4.0).
631
633
  </div>
@@ -497,7 +497,7 @@ some type of function.</p>
497
497
  </div>
498
498
 
499
499
  <div id="footer">
500
- Generated on Sat Jan 6 20:03:02 2018 by
500
+ Generated on Sat Jan 13 10:02:47 2018 by
501
501
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
502
502
  0.9.12 (ruby-2.4.0).
503
503
  </div>