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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/README.md +26 -2
- data/csv_decision.gemspec +1 -1
- data/doc/CSVDecision/CellValidationError.html +2 -2
- data/doc/CSVDecision/Columns/Default.html +203 -23
- data/doc/CSVDecision/Columns/Dictionary.html +118 -25
- data/doc/CSVDecision/Columns.html +213 -31
- data/doc/CSVDecision/Data.html +1 -1
- data/doc/CSVDecision/Decide.html +1 -1
- data/doc/CSVDecision/Decision.html +1 -1
- data/doc/CSVDecision/Defaults.html +291 -0
- data/doc/CSVDecision/Dictionary/Entry.html +584 -47
- data/doc/CSVDecision/Dictionary.html +20 -20
- data/doc/CSVDecision/Error.html +2 -2
- data/doc/CSVDecision/FileError.html +1 -1
- data/doc/CSVDecision/Header.html +110 -33
- data/doc/CSVDecision/Input.html +1 -1
- data/doc/CSVDecision/Load.html +1 -1
- data/doc/CSVDecision/Matchers/Constant.html +12 -37
- data/doc/CSVDecision/Matchers/Function.html +1 -1
- data/doc/CSVDecision/Matchers/Guard.html +15 -13
- data/doc/CSVDecision/Matchers/Matcher.html +1 -1
- data/doc/CSVDecision/Matchers/Numeric.html +13 -21
- data/doc/CSVDecision/Matchers/Pattern.html +14 -14
- data/doc/CSVDecision/Matchers/Proc.html +1 -1
- data/doc/CSVDecision/Matchers/Range.html +13 -58
- data/doc/CSVDecision/Matchers/Symbol.html +1 -1
- data/doc/CSVDecision/Matchers.html +9 -9
- data/doc/CSVDecision/Options.html +1 -1
- data/doc/CSVDecision/Parse.html +90 -19
- data/doc/CSVDecision/Result.html +1 -1
- data/doc/CSVDecision/ScanRow.html +17 -17
- data/doc/CSVDecision/Table.html +50 -48
- data/doc/CSVDecision/TableValidationError.html +143 -0
- data/doc/CSVDecision/Validate.html +422 -0
- data/doc/CSVDecision.html +8 -8
- data/doc/_index.html +33 -1
- data/doc/class_list.html +1 -1
- data/doc/file.README.html +27 -3
- data/doc/index.html +27 -3
- data/doc/method_list.html +193 -89
- data/doc/top-level-namespace.html +1 -1
- data/lib/csv_decision/columns.rb +28 -27
- data/lib/csv_decision/defaults.rb +47 -0
- data/lib/csv_decision/dictionary.rb +104 -112
- data/lib/csv_decision/header.rb +13 -10
- data/lib/csv_decision/input.rb +53 -5
- data/lib/csv_decision/matchers/constant.rb +1 -2
- data/lib/csv_decision/matchers/guard.rb +3 -2
- data/lib/csv_decision/matchers/numeric.rb +4 -6
- data/lib/csv_decision/matchers/pattern.rb +6 -8
- data/lib/csv_decision/matchers/range.rb +1 -3
- data/lib/csv_decision/matchers.rb +7 -7
- data/lib/csv_decision/parse.rb +24 -3
- data/lib/csv_decision/scan_row.rb +16 -16
- data/lib/csv_decision/table.rb +3 -7
- data/lib/csv_decision/validate.rb +85 -0
- data/lib/csv_decision.rb +3 -1
- data/spec/csv_decision/columns_spec.rb +38 -22
- data/spec/csv_decision/examples_spec.rb +17 -0
- data/spec/csv_decision/matchers/range_spec.rb +0 -32
- data/spec/csv_decision/table_spec.rb +39 -0
- metadata +7 -2
@@ -69,13 +69,11 @@
|
|
69
69
|
<dl>
|
70
70
|
<dt>Inherits:</dt>
|
71
71
|
<dd>
|
72
|
-
<span class="inheritName">
|
72
|
+
<span class="inheritName">Object</span>
|
73
73
|
|
74
74
|
<ul class="fullTree">
|
75
75
|
<li>Object</li>
|
76
76
|
|
77
|
-
<li class="next">Struct</li>
|
78
|
-
|
79
77
|
<li class="next">CSVDecision::Dictionary::Entry</li>
|
80
78
|
|
81
79
|
</ul>
|
@@ -108,7 +106,7 @@
|
|
108
106
|
You should avoid using this class if possible, as it may be removed or be changed in the future.
|
109
107
|
</p>
|
110
108
|
|
111
|
-
<p>
|
109
|
+
<p>Column dictionary entries.</p>
|
112
110
|
|
113
111
|
|
114
112
|
</div>
|
@@ -126,7 +124,7 @@
|
|
126
124
|
<li class="public ">
|
127
125
|
<span class="summary_signature">
|
128
126
|
|
129
|
-
<a href="#eval-instance_method" title="#eval (instance method)">#<strong>eval</strong> ⇒
|
127
|
+
<a href="#eval-instance_method" title="#eval (instance method)">#<strong>eval</strong> ⇒ nil, Boolean </a>
|
130
128
|
|
131
129
|
|
132
130
|
|
@@ -140,11 +138,12 @@
|
|
140
138
|
|
141
139
|
|
142
140
|
|
143
|
-
|
141
|
+
<span class="private note title">private</span>
|
144
142
|
|
145
143
|
|
146
144
|
<span class="summary_desc"><div class='inline'>
|
147
|
-
<p>
|
145
|
+
<p>If set to true then this column has procs that need evaluating, otherwise
|
146
|
+
it only contains constants.</p>
|
148
147
|
</div></span>
|
149
148
|
|
150
149
|
</li>
|
@@ -153,7 +152,7 @@
|
|
153
152
|
<li class="public ">
|
154
153
|
<span class="summary_signature">
|
155
154
|
|
156
|
-
<a href="#
|
155
|
+
<a href="#function-instance_method" title="#function (instance method)">#<strong>function</strong> ⇒ Matchers::Proc, Object </a>
|
157
156
|
|
158
157
|
|
159
158
|
|
@@ -167,11 +166,41 @@
|
|
167
166
|
|
168
167
|
|
169
168
|
|
169
|
+
<span class="private note title">private</span>
|
170
|
+
|
171
|
+
|
172
|
+
<span class="summary_desc"><div class='inline'>
|
173
|
+
<p>For a column of type set: gives the proc that must be evaluated to set the
|
174
|
+
default value.</p>
|
175
|
+
</div></span>
|
176
|
+
|
177
|
+
</li>
|
178
|
+
|
179
|
+
|
180
|
+
<li class="public ">
|
181
|
+
<span class="summary_signature">
|
182
|
+
|
183
|
+
<a href="#name-instance_method" title="#name (instance method)">#<strong>name</strong> ⇒ Symbol </a>
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
</span>
|
188
|
+
|
189
|
+
|
190
|
+
|
191
|
+
|
192
|
+
<span class="note title readonly">readonly</span>
|
193
|
+
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
|
170
198
|
|
199
|
+
<span class="private note title">private</span>
|
171
200
|
|
172
201
|
|
173
202
|
<span class="summary_desc"><div class='inline'>
|
174
|
-
<p>
|
203
|
+
<p>Column name.</p>
|
175
204
|
</div></span>
|
176
205
|
|
177
206
|
</li>
|
@@ -180,7 +209,7 @@
|
|
180
209
|
<li class="public ">
|
181
210
|
<span class="summary_signature">
|
182
211
|
|
183
|
-
<a href="#
|
212
|
+
<a href="#set_if-instance_method" title="#set_if (instance method)">#<strong>set_if</strong> ⇒ nil, ... </a>
|
184
213
|
|
185
214
|
|
186
215
|
|
@@ -189,16 +218,47 @@
|
|
189
218
|
|
190
219
|
|
191
220
|
|
221
|
+
<span class="note title readonly">readonly</span>
|
222
|
+
|
192
223
|
|
193
224
|
|
194
225
|
|
195
226
|
|
196
227
|
|
228
|
+
<span class="private note title">private</span>
|
229
|
+
|
230
|
+
|
231
|
+
<span class="summary_desc"><div class='inline'>
|
232
|
+
<p>Defined for columns of type :set, nil otherwise.</p>
|
233
|
+
</div></span>
|
197
234
|
|
235
|
+
</li>
|
236
|
+
|
237
|
+
|
238
|
+
<li class="public ">
|
239
|
+
<span class="summary_signature">
|
240
|
+
|
241
|
+
<a href="#type-instance_method" title="#type (instance method)">#<strong>type</strong> ⇒ Symbol </a>
|
242
|
+
|
243
|
+
|
244
|
+
|
245
|
+
</span>
|
246
|
+
|
247
|
+
|
248
|
+
|
249
|
+
|
250
|
+
<span class="note title readonly">readonly</span>
|
251
|
+
|
252
|
+
|
253
|
+
|
254
|
+
|
255
|
+
|
256
|
+
|
257
|
+
<span class="private note title">private</span>
|
198
258
|
|
199
259
|
|
200
260
|
<span class="summary_desc"><div class='inline'>
|
201
|
-
<p>
|
261
|
+
<p>Column type.</p>
|
202
262
|
</div></span>
|
203
263
|
|
204
264
|
</li>
|
@@ -210,6 +270,40 @@
|
|
210
270
|
|
211
271
|
|
212
272
|
|
273
|
+
<h2>
|
274
|
+
Class Method Summary
|
275
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
276
|
+
</h2>
|
277
|
+
|
278
|
+
<ul class="summary">
|
279
|
+
|
280
|
+
<li class="public ">
|
281
|
+
<span class="summary_signature">
|
282
|
+
|
283
|
+
<a href="#create-class_method" title="create (class method)">.<strong>create</strong>(name:, type:) ⇒ Entry </a>
|
284
|
+
|
285
|
+
|
286
|
+
|
287
|
+
</span>
|
288
|
+
|
289
|
+
|
290
|
+
|
291
|
+
|
292
|
+
|
293
|
+
|
294
|
+
<span class="private note title">private</span>
|
295
|
+
|
296
|
+
|
297
|
+
<span class="summary_desc"><div class='inline'>
|
298
|
+
<p>Create a new column dictionary entry defaulting attributes from the column
|
299
|
+
type, which is looked up in <code>ENTRY</code> table.</p>
|
300
|
+
</div></span>
|
301
|
+
|
302
|
+
</li>
|
303
|
+
|
304
|
+
|
305
|
+
</ul>
|
306
|
+
|
213
307
|
<h2>
|
214
308
|
Instance Method Summary
|
215
309
|
<small><a href="#" class="summary_toggle">collapse</a></small>
|
@@ -220,6 +314,32 @@
|
|
220
314
|
<li class="public ">
|
221
315
|
<span class="summary_signature">
|
222
316
|
|
317
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(name:, type:, eval: nil, set_if: nil) ⇒ Entry </a>
|
318
|
+
|
319
|
+
|
320
|
+
|
321
|
+
</span>
|
322
|
+
|
323
|
+
|
324
|
+
<span class="note title constructor">constructor</span>
|
325
|
+
|
326
|
+
|
327
|
+
|
328
|
+
|
329
|
+
|
330
|
+
<span class="private note title">private</span>
|
331
|
+
|
332
|
+
|
333
|
+
<span class="summary_desc"><div class='inline'>
|
334
|
+
<p>A new instance of Entry.</p>
|
335
|
+
</div></span>
|
336
|
+
|
337
|
+
</li>
|
338
|
+
|
339
|
+
|
340
|
+
<li class="public ">
|
341
|
+
<span class="summary_signature">
|
342
|
+
|
223
343
|
<a href="#ins%3F-instance_method" title="#ins? (instance method)">#<strong>ins?</strong> ⇒ Boolean </a>
|
224
344
|
|
225
345
|
|
@@ -234,7 +354,33 @@
|
|
234
354
|
<span class="private note title">private</span>
|
235
355
|
|
236
356
|
|
237
|
-
<span class="summary_desc"><div class='inline'
|
357
|
+
<span class="summary_desc"><div class='inline'>
|
358
|
+
<p>Return true is this is an input column, false otherwise.</p>
|
359
|
+
</div></span>
|
360
|
+
|
361
|
+
</li>
|
362
|
+
|
363
|
+
|
364
|
+
<li class="public ">
|
365
|
+
<span class="summary_signature">
|
366
|
+
|
367
|
+
<a href="#to_h-instance_method" title="#to_h (instance method)">#<strong>to_h</strong> ⇒ Hash{Symbol=>[nil, Boolean, Symbol]} </a>
|
368
|
+
|
369
|
+
|
370
|
+
|
371
|
+
</span>
|
372
|
+
|
373
|
+
|
374
|
+
|
375
|
+
|
376
|
+
|
377
|
+
|
378
|
+
<span class="private note title">private</span>
|
379
|
+
|
380
|
+
|
381
|
+
<span class="summary_desc"><div class='inline'>
|
382
|
+
<p>Convert the object's attributes to a hash.</p>
|
383
|
+
</div></span>
|
238
384
|
|
239
385
|
</li>
|
240
386
|
|
@@ -242,8 +388,66 @@
|
|
242
388
|
</ul>
|
243
389
|
|
244
390
|
|
391
|
+
<div id="constructor_details" class="method_details_list">
|
392
|
+
<h2>Constructor Details</h2>
|
393
|
+
|
394
|
+
<div class="method_details first">
|
395
|
+
<h3 class="signature first" id="initialize-instance_method">
|
396
|
+
|
397
|
+
#<strong>initialize</strong>(name:, type:, eval: nil, set_if: nil) ⇒ <tt><span class='object_link'><a href="" title="CSVDecision::Dictionary::Entry (class)">Entry</a></span></tt>
|
398
|
+
|
399
|
+
|
400
|
+
|
245
401
|
|
246
402
|
|
403
|
+
</h3><div class="docstring">
|
404
|
+
<div class="discussion">
|
405
|
+
<p class="note private">
|
406
|
+
<strong>This method is part of a private API.</strong>
|
407
|
+
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
408
|
+
</p>
|
409
|
+
|
410
|
+
<p>Returns a new instance of Entry</p>
|
411
|
+
|
412
|
+
|
413
|
+
</div>
|
414
|
+
</div>
|
415
|
+
<div class="tags">
|
416
|
+
|
417
|
+
|
418
|
+
</div><table class="source_code">
|
419
|
+
<tr>
|
420
|
+
<td>
|
421
|
+
<pre class="lines">
|
422
|
+
|
423
|
+
|
424
|
+
70
|
425
|
+
71
|
426
|
+
72
|
427
|
+
73
|
428
|
+
74
|
429
|
+
75
|
430
|
+
76
|
431
|
+
77</pre>
|
432
|
+
</td>
|
433
|
+
<td>
|
434
|
+
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 70</span>
|
435
|
+
|
436
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='label'>name:</span><span class='comma'>,</span> <span class='label'>type:</span><span class='comma'>,</span> <span class='label'>eval:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>set_if:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
437
|
+
<span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span>
|
438
|
+
<span class='ivar'>@type</span> <span class='op'>=</span> <span class='id identifier rubyid_type'>type</span>
|
439
|
+
<span class='ivar'>@eval</span> <span class='op'>=</span> <span class='id identifier rubyid_eval'>eval</span>
|
440
|
+
<span class='ivar'>@set_if</span> <span class='op'>=</span> <span class='id identifier rubyid_set_if'>set_if</span>
|
441
|
+
<span class='ivar'>@function</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
442
|
+
<span class='ivar'>@ins</span> <span class='op'>=</span> <span class='const'>INS_TYPES</span><span class='period'>.</span><span class='id identifier rubyid_member?'>member?</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='rparen'>)</span>
|
443
|
+
<span class='kw'>end</span></pre>
|
444
|
+
</td>
|
445
|
+
</tr>
|
446
|
+
</table>
|
447
|
+
</div>
|
448
|
+
|
449
|
+
</div>
|
450
|
+
|
247
451
|
<div id="instance_attr_details" class="attr_details">
|
248
452
|
<h2>Instance Attribute Details</h2>
|
249
453
|
|
@@ -252,7 +456,7 @@
|
|
252
456
|
<div class="method_details first">
|
253
457
|
<h3 class="signature first" id="eval-instance_method">
|
254
458
|
|
255
|
-
#<strong>eval</strong> ⇒ <tt>
|
459
|
+
#<strong>eval</strong> ⇒ <tt>nil</tt>, <tt>Boolean</tt>
|
256
460
|
|
257
461
|
|
258
462
|
|
@@ -260,8 +464,13 @@
|
|
260
464
|
|
261
465
|
</h3><div class="docstring">
|
262
466
|
<div class="discussion">
|
263
|
-
|
264
|
-
<
|
467
|
+
<p class="note private">
|
468
|
+
<strong>This method is part of a private API.</strong>
|
469
|
+
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
470
|
+
</p>
|
471
|
+
|
472
|
+
<p>Returns If set to true then this column has procs that need evaluating,
|
473
|
+
otherwise it only contains constants.</p>
|
265
474
|
|
266
475
|
|
267
476
|
</div>
|
@@ -274,13 +483,14 @@
|
|
274
483
|
<li>
|
275
484
|
|
276
485
|
|
277
|
-
<span class='type'>(<tt>
|
486
|
+
<span class='type'>(<tt>nil</tt>, <tt>Boolean</tt>)</span>
|
278
487
|
|
279
488
|
|
280
489
|
|
281
490
|
—
|
282
491
|
<div class='inline'>
|
283
|
-
<p>
|
492
|
+
<p>If set to true then this column has procs that need evaluating, otherwise
|
493
|
+
it only contains constants.</p>
|
284
494
|
</div>
|
285
495
|
|
286
496
|
</li>
|
@@ -293,12 +503,12 @@
|
|
293
503
|
<pre class="lines">
|
294
504
|
|
295
505
|
|
296
|
-
|
297
|
-
|
298
|
-
|
506
|
+
55
|
507
|
+
56
|
508
|
+
57</pre>
|
299
509
|
</td>
|
300
510
|
<td>
|
301
|
-
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line
|
511
|
+
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 55</span>
|
302
512
|
|
303
513
|
<span class='kw'>def</span> <span class='id identifier rubyid_eval'>eval</span>
|
304
514
|
<span class='ivar'>@eval</span>
|
@@ -309,11 +519,11 @@
|
|
309
519
|
</div>
|
310
520
|
|
311
521
|
|
312
|
-
<span id="
|
522
|
+
<span id="function=-instance_method"></span>
|
313
523
|
<div class="method_details ">
|
314
|
-
<h3 class="signature " id="
|
524
|
+
<h3 class="signature " id="function-instance_method">
|
315
525
|
|
316
|
-
#<strong>
|
526
|
+
#<strong>function</strong> ⇒ <tt><span class='object_link'><a href="../Matchers/Proc.html" title="CSVDecision::Matchers::Proc (class)">Matchers::Proc</a></span></tt>, <tt>Object</tt>
|
317
527
|
|
318
528
|
|
319
529
|
|
@@ -321,8 +531,79 @@
|
|
321
531
|
|
322
532
|
</h3><div class="docstring">
|
323
533
|
<div class="discussion">
|
534
|
+
<p class="note private">
|
535
|
+
<strong>This method is part of a private API.</strong>
|
536
|
+
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
537
|
+
</p>
|
538
|
+
|
539
|
+
<p>Returns For a column of type set: gives the proc that must be evaluated to
|
540
|
+
set the default value. If not a proc, then it's some type of constant.</p>
|
541
|
+
|
542
|
+
|
543
|
+
</div>
|
544
|
+
</div>
|
545
|
+
<div class="tags">
|
546
|
+
|
547
|
+
<p class="tag_title">Returns:</p>
|
548
|
+
<ul class="return">
|
549
|
+
|
550
|
+
<li>
|
551
|
+
|
552
|
+
|
553
|
+
<span class='type'>(<tt><span class='object_link'><a href="../Matchers/Proc.html" title="CSVDecision::Matchers::Proc (class)">Matchers::Proc</a></span></tt>, <tt>Object</tt>)</span>
|
554
|
+
|
555
|
+
|
556
|
+
|
557
|
+
—
|
558
|
+
<div class='inline'>
|
559
|
+
<p>For a column of type set: gives the proc that must be evaluated to set the
|
560
|
+
default value. If not a proc, then it's some type of constant.</p>
|
561
|
+
</div>
|
562
|
+
|
563
|
+
</li>
|
564
|
+
|
565
|
+
</ul>
|
566
|
+
|
567
|
+
</div><table class="source_code">
|
568
|
+
<tr>
|
569
|
+
<td>
|
570
|
+
<pre class="lines">
|
571
|
+
|
572
|
+
|
573
|
+
64
|
574
|
+
65
|
575
|
+
66</pre>
|
576
|
+
</td>
|
577
|
+
<td>
|
578
|
+
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 64</span>
|
579
|
+
|
580
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_function'>function</span>
|
581
|
+
<span class='ivar'>@function</span>
|
582
|
+
<span class='kw'>end</span></pre>
|
583
|
+
</td>
|
584
|
+
</tr>
|
585
|
+
</table>
|
586
|
+
</div>
|
324
587
|
|
325
|
-
|
588
|
+
|
589
|
+
<span id=""></span>
|
590
|
+
<div class="method_details ">
|
591
|
+
<h3 class="signature " id="name-instance_method">
|
592
|
+
|
593
|
+
#<strong>name</strong> ⇒ <tt>Symbol</tt> <span class="extras">(readonly)</span>
|
594
|
+
|
595
|
+
|
596
|
+
|
597
|
+
|
598
|
+
|
599
|
+
</h3><div class="docstring">
|
600
|
+
<div class="discussion">
|
601
|
+
<p class="note private">
|
602
|
+
<strong>This method is part of a private API.</strong>
|
603
|
+
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
604
|
+
</p>
|
605
|
+
|
606
|
+
<p>Returns Column name.</p>
|
326
607
|
|
327
608
|
|
328
609
|
</div>
|
@@ -335,13 +616,13 @@
|
|
335
616
|
<li>
|
336
617
|
|
337
618
|
|
338
|
-
<span class='type'>(<tt>
|
619
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
339
620
|
|
340
621
|
|
341
622
|
|
342
623
|
—
|
343
624
|
<div class='inline'>
|
344
|
-
<p>
|
625
|
+
<p>Column name.</p>
|
345
626
|
</div>
|
346
627
|
|
347
628
|
</li>
|
@@ -354,12 +635,12 @@
|
|
354
635
|
<pre class="lines">
|
355
636
|
|
356
637
|
|
357
|
-
|
358
|
-
|
359
|
-
|
638
|
+
48
|
639
|
+
49
|
640
|
+
50</pre>
|
360
641
|
</td>
|
361
642
|
<td>
|
362
|
-
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line
|
643
|
+
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 48</span>
|
363
644
|
|
364
645
|
<span class='kw'>def</span> <span class='id identifier rubyid_name'>name</span>
|
365
646
|
<span class='ivar'>@name</span>
|
@@ -370,11 +651,11 @@
|
|
370
651
|
</div>
|
371
652
|
|
372
653
|
|
373
|
-
<span id="
|
654
|
+
<span id=""></span>
|
374
655
|
<div class="method_details ">
|
375
|
-
<h3 class="signature " id="
|
656
|
+
<h3 class="signature " id="set_if-instance_method">
|
376
657
|
|
377
|
-
#<strong>
|
658
|
+
#<strong>set_if</strong> ⇒ <tt>nil</tt>, ... <span class="extras">(readonly)</span>
|
378
659
|
|
379
660
|
|
380
661
|
|
@@ -382,8 +663,81 @@
|
|
382
663
|
|
383
664
|
</h3><div class="docstring">
|
384
665
|
<div class="discussion">
|
666
|
+
<p class="note private">
|
667
|
+
<strong>This method is part of a private API.</strong>
|
668
|
+
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
669
|
+
</p>
|
670
|
+
|
671
|
+
<p>Returns Defined for columns of type :set, nil otherwise. If true, then
|
672
|
+
default is set unconditionally, otherwise the method symbol sent to the
|
673
|
+
input hash value that must evaluate to a truthy value.</p>
|
674
|
+
|
675
|
+
|
676
|
+
</div>
|
677
|
+
</div>
|
678
|
+
<div class="tags">
|
679
|
+
|
680
|
+
<p class="tag_title">Returns:</p>
|
681
|
+
<ul class="return">
|
682
|
+
|
683
|
+
<li>
|
684
|
+
|
685
|
+
|
686
|
+
<span class='type'>(<tt>nil</tt>, <tt>true</tt>, <tt>Symbol</tt>)</span>
|
687
|
+
|
688
|
+
|
689
|
+
|
690
|
+
—
|
691
|
+
<div class='inline'>
|
692
|
+
<p>Defined for columns of type :set, nil otherwise. If true, then default is
|
693
|
+
set unconditionally, otherwise the method symbol sent to the input hash
|
694
|
+
value that must evaluate to a truthy value.</p>
|
695
|
+
</div>
|
696
|
+
|
697
|
+
</li>
|
698
|
+
|
699
|
+
</ul>
|
700
|
+
|
701
|
+
</div><table class="source_code">
|
702
|
+
<tr>
|
703
|
+
<td>
|
704
|
+
<pre class="lines">
|
705
|
+
|
706
|
+
|
707
|
+
60
|
708
|
+
61
|
709
|
+
62</pre>
|
710
|
+
</td>
|
711
|
+
<td>
|
712
|
+
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 60</span>
|
713
|
+
|
714
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_set_if'>set_if</span>
|
715
|
+
<span class='ivar'>@set_if</span>
|
716
|
+
<span class='kw'>end</span></pre>
|
717
|
+
</td>
|
718
|
+
</tr>
|
719
|
+
</table>
|
720
|
+
</div>
|
385
721
|
|
386
|
-
|
722
|
+
|
723
|
+
<span id=""></span>
|
724
|
+
<div class="method_details ">
|
725
|
+
<h3 class="signature " id="type-instance_method">
|
726
|
+
|
727
|
+
#<strong>type</strong> ⇒ <tt>Symbol</tt> <span class="extras">(readonly)</span>
|
728
|
+
|
729
|
+
|
730
|
+
|
731
|
+
|
732
|
+
|
733
|
+
</h3><div class="docstring">
|
734
|
+
<div class="discussion">
|
735
|
+
<p class="note private">
|
736
|
+
<strong>This method is part of a private API.</strong>
|
737
|
+
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
738
|
+
</p>
|
739
|
+
|
740
|
+
<p>Returns Column type.</p>
|
387
741
|
|
388
742
|
|
389
743
|
</div>
|
@@ -396,13 +750,13 @@
|
|
396
750
|
<li>
|
397
751
|
|
398
752
|
|
399
|
-
<span class='type'>(<tt>
|
753
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
400
754
|
|
401
755
|
|
402
756
|
|
403
757
|
—
|
404
758
|
<div class='inline'>
|
405
|
-
<p>
|
759
|
+
<p>Column type.</p>
|
406
760
|
</div>
|
407
761
|
|
408
762
|
</li>
|
@@ -415,12 +769,12 @@
|
|
415
769
|
<pre class="lines">
|
416
770
|
|
417
771
|
|
418
|
-
|
419
|
-
|
420
|
-
|
772
|
+
51
|
773
|
+
52
|
774
|
+
53</pre>
|
421
775
|
</td>
|
422
776
|
<td>
|
423
|
-
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line
|
777
|
+
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 51</span>
|
424
778
|
|
425
779
|
<span class='kw'>def</span> <span class='id identifier rubyid_type'>type</span>
|
426
780
|
<span class='ivar'>@type</span>
|
@@ -433,6 +787,114 @@
|
|
433
787
|
</div>
|
434
788
|
|
435
789
|
|
790
|
+
<div id="class_method_details" class="method_details_list">
|
791
|
+
<h2>Class Method Details</h2>
|
792
|
+
|
793
|
+
|
794
|
+
<div class="method_details first">
|
795
|
+
<h3 class="signature first" id="create-class_method">
|
796
|
+
|
797
|
+
.<strong>create</strong>(name:, type:) ⇒ <tt><span class='object_link'><a href="" title="CSVDecision::Dictionary::Entry (class)">Entry</a></span></tt>
|
798
|
+
|
799
|
+
|
800
|
+
|
801
|
+
|
802
|
+
|
803
|
+
</h3><div class="docstring">
|
804
|
+
<div class="discussion">
|
805
|
+
<p class="note private">
|
806
|
+
<strong>This method is part of a private API.</strong>
|
807
|
+
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
808
|
+
</p>
|
809
|
+
|
810
|
+
<p>Create a new column dictionary entry defaulting attributes from the column
|
811
|
+
type, which is looked up in <code>ENTRY</code> table.</p>
|
812
|
+
|
813
|
+
|
814
|
+
</div>
|
815
|
+
</div>
|
816
|
+
<div class="tags">
|
817
|
+
<p class="tag_title">Parameters:</p>
|
818
|
+
<ul class="param">
|
819
|
+
|
820
|
+
<li>
|
821
|
+
|
822
|
+
<span class='name'>name</span>
|
823
|
+
|
824
|
+
|
825
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
826
|
+
|
827
|
+
|
828
|
+
|
829
|
+
—
|
830
|
+
<div class='inline'>
|
831
|
+
<p>Column name.</p>
|
832
|
+
</div>
|
833
|
+
|
834
|
+
</li>
|
835
|
+
|
836
|
+
<li>
|
837
|
+
|
838
|
+
<span class='name'>type</span>
|
839
|
+
|
840
|
+
|
841
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
842
|
+
|
843
|
+
|
844
|
+
|
845
|
+
—
|
846
|
+
<div class='inline'>
|
847
|
+
<p>Column type.</p>
|
848
|
+
</div>
|
849
|
+
|
850
|
+
</li>
|
851
|
+
|
852
|
+
</ul>
|
853
|
+
|
854
|
+
<p class="tag_title">Returns:</p>
|
855
|
+
<ul class="return">
|
856
|
+
|
857
|
+
<li>
|
858
|
+
|
859
|
+
|
860
|
+
<span class='type'>(<tt><span class='object_link'><a href="" title="CSVDecision::Dictionary::Entry (class)">Entry</a></span></tt>)</span>
|
861
|
+
|
862
|
+
|
863
|
+
|
864
|
+
—
|
865
|
+
<div class='inline'>
|
866
|
+
<p>Column dictionary entry.</p>
|
867
|
+
</div>
|
868
|
+
|
869
|
+
</li>
|
870
|
+
|
871
|
+
</ul>
|
872
|
+
|
873
|
+
</div><table class="source_code">
|
874
|
+
<tr>
|
875
|
+
<td>
|
876
|
+
<pre class="lines">
|
877
|
+
|
878
|
+
|
879
|
+
37
|
880
|
+
38
|
881
|
+
39
|
882
|
+
40</pre>
|
883
|
+
</td>
|
884
|
+
<td>
|
885
|
+
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 37</span>
|
886
|
+
|
887
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='label'>name:</span><span class='comma'>,</span> <span class='label'>type:</span><span class='rparen'>)</span>
|
888
|
+
<span class='id identifier rubyid_entry'>entry</span> <span class='op'>=</span> <span class='const'>ENTRY</span><span class='lbracket'>[</span><span class='id identifier rubyid_type'>type</span><span class='rbracket'>]</span>
|
889
|
+
<span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='label'>name:</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='label'>eval:</span> <span class='id identifier rubyid_entry'>entry</span><span class='lbracket'>[</span><span class='symbol'>:eval</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='label'>type:</span> <span class='id identifier rubyid_entry'>entry</span><span class='lbracket'>[</span><span class='symbol'>:type</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='label'>set_if:</span> <span class='id identifier rubyid_entry'>entry</span><span class='lbracket'>[</span><span class='symbol'>:set_if</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
890
|
+
<span class='kw'>end</span></pre>
|
891
|
+
</td>
|
892
|
+
</tr>
|
893
|
+
</table>
|
894
|
+
</div>
|
895
|
+
|
896
|
+
</div>
|
897
|
+
|
436
898
|
<div id="instance_method_details" class="method_details_list">
|
437
899
|
<h2>Instance Method Details</h2>
|
438
900
|
|
@@ -453,6 +915,8 @@
|
|
453
915
|
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
454
916
|
</p>
|
455
917
|
|
918
|
+
<p>Return true is this is an input column, false otherwise.</p>
|
919
|
+
|
456
920
|
|
457
921
|
</div>
|
458
922
|
</div>
|
@@ -468,6 +932,11 @@
|
|
468
932
|
|
469
933
|
|
470
934
|
|
935
|
+
—
|
936
|
+
<div class='inline'>
|
937
|
+
<p>Return true is this is an input column, false otherwise.</p>
|
938
|
+
</div>
|
939
|
+
|
471
940
|
</li>
|
472
941
|
|
473
942
|
</ul>
|
@@ -478,15 +947,83 @@
|
|
478
947
|
<pre class="lines">
|
479
948
|
|
480
949
|
|
481
|
-
|
482
|
-
|
483
|
-
|
950
|
+
43
|
951
|
+
44
|
952
|
+
45</pre>
|
484
953
|
</td>
|
485
954
|
<td>
|
486
|
-
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line
|
955
|
+
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 43</span>
|
487
956
|
|
488
957
|
<span class='kw'>def</span> <span class='id identifier rubyid_ins?'>ins?</span>
|
489
|
-
<span class='
|
958
|
+
<span class='ivar'>@ins</span>
|
959
|
+
<span class='kw'>end</span></pre>
|
960
|
+
</td>
|
961
|
+
</tr>
|
962
|
+
</table>
|
963
|
+
</div>
|
964
|
+
|
965
|
+
<div class="method_details ">
|
966
|
+
<h3 class="signature " id="to_h-instance_method">
|
967
|
+
|
968
|
+
#<strong>to_h</strong> ⇒ <tt>Hash{Symbol=>[nil, Boolean, Symbol]}</tt>
|
969
|
+
|
970
|
+
|
971
|
+
|
972
|
+
|
973
|
+
|
974
|
+
</h3><div class="docstring">
|
975
|
+
<div class="discussion">
|
976
|
+
<p class="note private">
|
977
|
+
<strong>This method is part of a private API.</strong>
|
978
|
+
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
979
|
+
</p>
|
980
|
+
|
981
|
+
<p>Convert the object's attributes to a hash.</p>
|
982
|
+
|
983
|
+
|
984
|
+
</div>
|
985
|
+
</div>
|
986
|
+
<div class="tags">
|
987
|
+
|
988
|
+
<p class="tag_title">Returns:</p>
|
989
|
+
<ul class="return">
|
990
|
+
|
991
|
+
<li>
|
992
|
+
|
993
|
+
|
994
|
+
<span class='type'>(<tt>Hash{Symbol=>[nil, Boolean, Symbol]}</tt>)</span>
|
995
|
+
|
996
|
+
|
997
|
+
|
998
|
+
</li>
|
999
|
+
|
1000
|
+
</ul>
|
1001
|
+
|
1002
|
+
</div><table class="source_code">
|
1003
|
+
<tr>
|
1004
|
+
<td>
|
1005
|
+
<pre class="lines">
|
1006
|
+
|
1007
|
+
|
1008
|
+
82
|
1009
|
+
83
|
1010
|
+
84
|
1011
|
+
85
|
1012
|
+
86
|
1013
|
+
87
|
1014
|
+
88
|
1015
|
+
89</pre>
|
1016
|
+
</td>
|
1017
|
+
<td>
|
1018
|
+
<pre class="code"><span class="info file"># File 'lib/csv_decision/dictionary.rb', line 82</span>
|
1019
|
+
|
1020
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_to_h'>to_h</span>
|
1021
|
+
<span class='lbrace'>{</span>
|
1022
|
+
<span class='label'>name:</span> <span class='ivar'>@name</span><span class='comma'>,</span>
|
1023
|
+
<span class='label'>type:</span> <span class='ivar'>@type</span><span class='comma'>,</span>
|
1024
|
+
<span class='label'>eval:</span> <span class='ivar'>@eval</span><span class='comma'>,</span>
|
1025
|
+
<span class='label'>set_if:</span> <span class='ivar'>@set_if</span>
|
1026
|
+
<span class='rbrace'>}</span>
|
490
1027
|
<span class='kw'>end</span></pre>
|
491
1028
|
</td>
|
492
1029
|
</tr>
|
@@ -498,7 +1035,7 @@
|
|
498
1035
|
</div>
|
499
1036
|
|
500
1037
|
<div id="footer">
|
501
|
-
Generated on Sat Jan
|
1038
|
+
Generated on Sat Jan 13 10:02:47 2018 by
|
502
1039
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
503
1040
|
0.9.12 (ruby-2.4.0).
|
504
1041
|
</div>
|