csv_decision2 0.5.1 → 0.5.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +1 -1
  3. data/README.md +16 -16
  4. data/benchmarks/rufus_decision.rb +5 -7
  5. data/csv_decision2.gemspec +2 -2
  6. data/doc/CSVDecision/CellValidationError.html +117 -110
  7. data/doc/CSVDecision/Columns/Default.html +537 -508
  8. data/doc/CSVDecision/Columns/Dictionary.html +729 -686
  9. data/doc/CSVDecision/Columns/Entry.html +457 -433
  10. data/doc/CSVDecision/Columns.html +1134 -1051
  11. data/doc/CSVDecision/Constant.html +205 -191
  12. data/doc/CSVDecision/Data.html +423 -398
  13. data/doc/CSVDecision/Decide.html +236 -225
  14. data/doc/CSVDecision/Decision.html +872 -825
  15. data/doc/CSVDecision/Defaults.html +243 -230
  16. data/doc/CSVDecision/Dictionary/Entry.html +1026 -964
  17. data/doc/CSVDecision/Dictionary.html +377 -355
  18. data/doc/CSVDecision/Error.html +116 -105
  19. data/doc/CSVDecision/FileError.html +117 -110
  20. data/doc/CSVDecision/Function.html +181 -168
  21. data/doc/CSVDecision/Guard.html +200 -185
  22. data/doc/CSVDecision/Header.html +557 -523
  23. data/doc/CSVDecision/Index.html +652 -617
  24. data/doc/CSVDecision/Input.html +329 -312
  25. data/doc/CSVDecision/Load.html +232 -220
  26. data/doc/CSVDecision/Matchers/Constant.html +432 -399
  27. data/doc/CSVDecision/Matchers/Function.html +451 -415
  28. data/doc/CSVDecision/Matchers/Guard.html +459 -424
  29. data/doc/CSVDecision/Matchers/Matcher.html +470 -426
  30. data/doc/CSVDecision/Matchers/Numeric.html +375 -346
  31. data/doc/CSVDecision/Matchers/Pattern.html +429 -396
  32. data/doc/CSVDecision/Matchers/Proc.html +617 -575
  33. data/doc/CSVDecision/Matchers/Range.html +331 -302
  34. data/doc/CSVDecision/Matchers/Symbol.html +386 -353
  35. data/doc/CSVDecision/Matchers.html +1509 -1393
  36. data/doc/CSVDecision/Numeric.html +201 -188
  37. data/doc/CSVDecision/Options.html +376 -357
  38. data/doc/CSVDecision/Parse.html +217 -204
  39. data/doc/CSVDecision/Paths.html +664 -629
  40. data/doc/CSVDecision/Result.html +1076 -1005
  41. data/doc/CSVDecision/Scan/InputHashes.html +305 -288
  42. data/doc/CSVDecision/Scan.html +262 -249
  43. data/doc/CSVDecision/ScanRow.html +749 -705
  44. data/doc/CSVDecision/Symbol.html +204 -191
  45. data/doc/CSVDecision/Table.html +1391 -1305
  46. data/doc/CSVDecision/TableValidationError.html +117 -110
  47. data/doc/CSVDecision/Validate.html +353 -337
  48. data/doc/CSVDecision.html +623 -552
  49. data/doc/_index.html +488 -448
  50. data/doc/class_list.html +250 -45
  51. data/doc/file.README.html +304 -278
  52. data/doc/index.html +304 -278
  53. data/doc/method_list.html +1159 -1017
  54. data/doc/top-level-namespace.html +79 -75
  55. data/lib/{csv_decision → csv_decision2}/columns.rb +7 -7
  56. data/lib/{csv_decision → csv_decision2}/data.rb +1 -1
  57. data/lib/{csv_decision → csv_decision2}/decision.rb +5 -5
  58. data/lib/{csv_decision → csv_decision2}/defaults.rb +2 -2
  59. data/lib/{csv_decision → csv_decision2}/dictionary.rb +2 -2
  60. data/lib/{csv_decision → csv_decision2}/header.rb +5 -5
  61. data/lib/{csv_decision → csv_decision2}/index.rb +5 -5
  62. data/lib/{csv_decision → csv_decision2}/input.rb +3 -3
  63. data/lib/{csv_decision → csv_decision2}/load.rb +6 -6
  64. data/lib/{csv_decision → csv_decision2}/matchers/constant.rb +2 -2
  65. data/lib/{csv_decision → csv_decision2}/matchers/function.rb +2 -2
  66. data/lib/{csv_decision → csv_decision2}/matchers/guard.rb +2 -2
  67. data/lib/{csv_decision → csv_decision2}/matchers/numeric.rb +2 -2
  68. data/lib/{csv_decision → csv_decision2}/matchers/pattern.rb +2 -2
  69. data/lib/{csv_decision → csv_decision2}/matchers/range.rb +2 -2
  70. data/lib/{csv_decision → csv_decision2}/matchers/symbol.rb +2 -2
  71. data/lib/{csv_decision → csv_decision2}/matchers.rb +5 -5
  72. data/lib/{csv_decision → csv_decision2}/options.rb +3 -3
  73. data/lib/{csv_decision → csv_decision2}/parse.rb +14 -14
  74. data/lib/{csv_decision → csv_decision2}/paths.rb +5 -5
  75. data/lib/{csv_decision → csv_decision2}/result.rb +2 -2
  76. data/lib/{csv_decision → csv_decision2}/scan.rb +3 -3
  77. data/lib/{csv_decision → csv_decision2}/scan_row.rb +2 -2
  78. data/lib/{csv_decision → csv_decision2}/table.rb +8 -8
  79. data/lib/{csv_decision → csv_decision2}/validate.rb +2 -2
  80. data/lib/csv_decision2.rb +45 -0
  81. data/spec/{csv_decision → csv_decision2}/columns_spec.rb +44 -44
  82. data/spec/{csv_decision → csv_decision2}/constant_spec.rb +4 -4
  83. data/spec/{csv_decision → csv_decision2}/data_spec.rb +11 -11
  84. data/spec/{csv_decision → csv_decision2}/decision_spec.rb +6 -6
  85. data/spec/{csv_decision → csv_decision2}/examples_spec.rb +14 -14
  86. data/spec/{csv_decision → csv_decision2}/index_spec.rb +8 -8
  87. data/spec/{csv_decision → csv_decision2}/input_spec.rb +9 -9
  88. data/spec/{csv_decision → csv_decision2}/load_spec.rb +8 -8
  89. data/spec/{csv_decision → csv_decision2}/matchers/function_spec.rb +7 -7
  90. data/spec/{csv_decision → csv_decision2}/matchers/guard_spec.rb +14 -14
  91. data/spec/{csv_decision → csv_decision2}/matchers/numeric_spec.rb +5 -5
  92. data/spec/{csv_decision → csv_decision2}/matchers/pattern_spec.rb +6 -6
  93. data/spec/{csv_decision → csv_decision2}/matchers/range_spec.rb +5 -5
  94. data/spec/{csv_decision → csv_decision2}/matchers/symbol_spec.rb +6 -6
  95. data/spec/{csv_decision → csv_decision2}/options_spec.rb +18 -18
  96. data/spec/csv_decision2/parse_spec.rb +44 -0
  97. data/spec/{csv_decision → csv_decision2}/table_spec.rb +17 -17
  98. data/spec/csv_decision2_spec.rb +7 -0
  99. metadata +64 -64
  100. data/lib/csv_decision.rb +0 -45
  101. data/spec/csv_decision/parse_spec.rb +0 -44
  102. data/spec/csv_decision_spec.rb +0 -7
@@ -1,23 +1,24 @@
1
1
  <!DOCTYPE html>
2
2
  <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>
7
- Module: CSVDecision::Options
8
-
3
+
4
+ <head>
5
+ <meta charset="utf-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <title>
8
+ Module: CSVDecision2::Options
9
+
9
10
  &mdash; Documentation by YARD 0.9.12
10
-
11
- </title>
11
+
12
+ </title>
12
13
 
13
14
  <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
15
 
15
16
  <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
17
 
17
- <script type="text/javascript" charset="utf-8">
18
- pathId = "CSVDecision::Options";
19
- relpath = '../';
20
- </script>
18
+ <script type="text/javascript" charset="utf-8">
19
+ pathId = "CSVDecision2::Options";
20
+ relpath = '../';
21
+ </script>
21
22
 
22
23
 
23
24
  <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
@@ -25,113 +26,119 @@
25
26
  <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
27
 
27
28
 
28
- </head>
29
- <body>
30
- <div class="nav_wrap">
31
- <iframe id="nav" src="../class_list.html?1"></iframe>
32
- <div id="resizer"></div>
29
+ </head>
30
+
31
+ <body>
32
+ <div class="nav_wrap">
33
+ <iframe id="nav" src="../class_list.html?1"></iframe>
34
+ <div id="resizer"></div>
35
+ </div>
36
+
37
+ <div id="main" tabindex="-1">
38
+ <div id="header">
39
+ <div id="menu">
40
+
41
+ <a href="../_index.html">Index (O)</a> &raquo;
42
+ <span class='title'><span class='object_link'><a href="../CSVDecision2.html"
43
+ title="CSVDecision (module)">CSVDecision</a></span></span>
44
+ &raquo;
45
+ <span class="title">Options</span>
46
+
47
+ </div>
48
+
49
+ <div id="search">
50
+
51
+ <a class="full_list_link" id="class_list_link" href="../class_list.html">
52
+
53
+ <svg width="24" height="24">
54
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
55
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
56
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
57
+ </svg>
58
+ </a>
59
+
60
+ </div>
61
+ <div class="clear"></div>
33
62
  </div>
34
63
 
35
- <div id="main" tabindex="-1">
36
- <div id="header">
37
- <div id="menu">
38
-
39
- <a href="../_index.html">Index (O)</a> &raquo;
40
- <span class='title'><span class='object_link'><a href="../CSVDecision.html" title="CSVDecision (module)">CSVDecision</a></span></span>
41
- &raquo;
42
- <span class="title">Options</span>
43
-
44
- </div>
45
-
46
- <div id="search">
47
-
48
- <a class="full_list_link" id="class_list_link"
49
- href="../class_list.html">
50
-
51
- <svg width="24" height="24">
52
- <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
- <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
- <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
- </svg>
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
64
+ <div id="content">
65
+ <h1>Module: CSVDecision2::Options
66
+
67
+
68
+ <span class="private note title">Private</span>
69
+ </h1>
70
+ <div class="box_info">
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+
80
+
81
+
82
+ <dl>
83
+ <dt>Defined in:</dt>
84
+ <dd>lib/csv_decision2/options.rb</dd>
85
+ </dl>
86
+
60
87
  </div>
61
88
 
62
- <div id="content"><h1>Module: CSVDecision::Options
63
-
64
-
65
- <span class="private note title">Private</span>
66
- </h1>
67
- <div class="box_info">
68
-
89
+ <h2>Overview</h2>
90
+ <div class="docstring">
91
+ <div class="discussion">
92
+ <p class="note private">
93
+ <strong>This module is part of a private API.</strong>
94
+ You should avoid using this module if possible, as it may be removed or be changed in the future.
95
+ </p>
69
96
 
70
-
71
-
72
-
73
-
74
-
97
+ <p>Validate and normalize the options values supplied.</p>
75
98
 
76
-
77
99
 
78
-
79
- <dl>
80
- <dt>Defined in:</dt>
81
- <dd>lib/csv_decision/options.rb</dd>
82
- </dl>
83
-
84
- </div>
100
+ </div>
101
+ </div>
102
+ <div class="tags">
85
103
 
86
- <h2>Overview</h2><div class="docstring">
87
- <div class="discussion">
88
- <p class="note private">
89
- <strong>This module is part of a private API.</strong>
90
- You should avoid using this module if possible, as it may be removed or be changed in the future.
91
- </p>
92
104
 
93
- <p>Validate and normalize the options values supplied.</p>
105
+ </div>
106
+ <h2>Constant Summary</h2>
107
+ <dl class="constants">
94
108
 
109
+ <dt id="DEFAULT_MATCHERS-constant" class="">DEFAULT_MATCHERS =
110
+ <div class="docstring">
111
+ <div class="discussion">
112
+ <p class="note private">
113
+ <strong>This constant is part of a private API.</strong>
114
+ You should avoid using this constant if possible, as it may be removed or be changed in the future.
115
+ </p>
95
116
 
96
- </div>
97
- </div>
98
- <div class="tags">
99
-
100
-
101
- </div>
102
- <h2>Constant Summary</h2>
103
- <dl class="constants">
104
-
105
- <dt id="DEFAULT_MATCHERS-constant" class="">DEFAULT_MATCHERS =
106
- <div class="docstring">
107
- <div class="discussion">
108
- <p class="note private">
109
- <strong>This constant is part of a private API.</strong>
110
- You should avoid using this constant if possible, as it may be removed or be changed in the future.
111
- </p>
112
-
113
- <p>Specialized cell value matchers beyond simple string compares. By default
114
- all these matchers are tried in the specified order on all input data
115
- cells.</p>
117
+ <p>Specialized cell value matchers beyond simple string compares. By default
118
+ all these matchers are tried in the specified order on all input data
119
+ cells.</p>
116
120
 
117
121
 
118
- </div>
119
- </div>
120
- <div class="tags">
121
-
122
+ </div>
123
+ </div>
124
+ <div class="tags">
125
+
126
+
127
+ </div>
128
+ </dt>
129
+ <dd>
130
+ <pre
131
+ class="code"><span class='lbracket'>[</span>
132
+ <span class='const'><span class='object_link'><a href="Matchers.html" title="CSVDecision2::Matchers (class)">Matchers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Matchers/Range.html" title="CSVDecision2::Matchers::Range (class)">Range</a></span></span><span class='comma'>,</span>
133
+ <span class='const'><span class='object_link'><a href="Matchers.html" title="CSVDecision2::Matchers (class)">Matchers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Matchers/Numeric.html" title="CSVDecision2::Matchers::Numeric (class)">Numeric</a></span></span><span class='comma'>,</span>
134
+ <span class='const'><span class='object_link'><a href="Matchers.html" title="CSVDecision2::Matchers (class)">Matchers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Matchers/Pattern.html" title="CSVDecision2::Matchers::Pattern (class)">Pattern</a></span></span><span class='comma'>,</span>
135
+ <span class='const'><span class='object_link'><a href="Matchers.html" title="CSVDecision2::Matchers (class)">Matchers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Matchers/Constant.html" title="CSVDecision2::Matchers::Constant (class)">Constant</a></span></span><span class='comma'>,</span>
136
+ <span class='const'><span class='object_link'><a href="Matchers.html" title="CSVDecision2::Matchers (class)">Matchers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Matchers/Symbol.html" title="CSVDecision2::Matchers::Symbol (class)">Symbol</a></span></span><span class='comma'>,</span>
137
+ <span class='const'><span class='object_link'><a href="Matchers.html" title="CSVDecision2::Matchers (class)">Matchers</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Matchers/Guard.html" title="CSVDecision2::Matchers::Guard (class)">Guard</a></span></span>
138
+ <span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre>
139
+ </dd>
122
140
 
123
- </div>
124
- </dt>
125
- <dd><pre class="code"><span class='lbracket'>[</span>
126
- <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="Matchers/Range.html" title="CSVDecision::Matchers::Range (class)">Range</a></span></span><span class='comma'>,</span>
127
- <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="Matchers/Numeric.html" title="CSVDecision::Matchers::Numeric (class)">Numeric</a></span></span><span class='comma'>,</span>
128
- <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="Matchers/Pattern.html" title="CSVDecision::Matchers::Pattern (class)">Pattern</a></span></span><span class='comma'>,</span>
129
- <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="Matchers/Constant.html" title="CSVDecision::Matchers::Constant (class)">Constant</a></span></span><span class='comma'>,</span>
130
- <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="Matchers/Symbol.html" title="CSVDecision::Matchers::Symbol (class)">Symbol</a></span></span><span class='comma'>,</span>
131
- <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="Matchers/Guard.html" title="CSVDecision::Matchers::Guard (class)">Guard</a></span></span>
132
- <span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
133
-
134
- </dl>
141
+ </dl>
135
142
 
136
143
 
137
144
 
@@ -139,154 +146,162 @@ cells.</p>
139
146
 
140
147
 
141
148
 
142
-
143
- <h2>
144
- Class Method Summary
145
- <small><a href="#" class="summary_toggle">collapse</a></small>
146
- </h2>
147
149
 
148
- <ul class="summary">
149
-
150
+ <h2>
151
+ Class Method Summary
152
+ <small><a href="#" class="summary_toggle">collapse</a></small>
153
+ </h2>
154
+
155
+ <ul class="summary">
156
+
150
157
  <li class="public ">
151
- <span class="summary_signature">
152
-
153
- <a href="#from_csv-class_method" title="from_csv (class method)">.<strong>from_csv</strong>(rows:, options:) &#x21d2; Hash </a>
154
-
155
-
156
-
157
- </span>
158
-
159
-
160
-
161
-
162
-
163
-
164
- <span class="private note title">private</span>
165
-
166
-
167
- <span class="summary_desc"><div class='inline'>
168
- <p>Read any options supplied in the CSV file placed before the header row.</p>
169
- </div></span>
170
-
171
- </li>
172
-
173
-
158
+ <span class="summary_signature">
159
+
160
+ <a href="#from_csv-class_method" title="from_csv (class method)">.<strong>from_csv</strong>(rows:, options:)
161
+ &#x21d2; Hash </a>
162
+
163
+
164
+
165
+ </span>
166
+
167
+
168
+
169
+
170
+
171
+
172
+ <span class="private note title">private</span>
173
+
174
+
175
+ <span class="summary_desc">
176
+ <div class='inline'>
177
+ <p>Read any options supplied in the CSV file placed before the header row.</p>
178
+ </div>
179
+ </span>
180
+
181
+ </li>
182
+
183
+
174
184
  <li class="public ">
175
- <span class="summary_signature">
176
-
177
- <a href="#normalize-class_method" title="normalize (class method)">.<strong>normalize</strong>(options) &#x21d2; Hash </a>
178
-
179
-
180
-
181
- </span>
182
-
183
-
184
-
185
-
186
-
187
-
188
- <span class="private note title">private</span>
189
-
190
-
191
- <span class="summary_desc"><div class='inline'>
192
- <p>Validate options and supply default values for any options not explicitly
193
- set.</p>
194
- </div></span>
195
-
196
- </li>
197
-
198
-
199
- </ul>
200
-
201
-
202
-
203
-
204
- <div id="class_method_details" class="method_details_list">
205
- <h2>Class Method Details</h2>
206
-
207
-
208
- <div class="method_details first">
209
- <h3 class="signature first" id="from_csv-class_method">
210
-
211
- .<strong>from_csv</strong>(rows:, options:) &#x21d2; <tt>Hash</tt>
212
-
213
-
214
-
215
-
216
-
217
- </h3><div class="docstring">
218
- <div class="discussion">
219
- <p class="note private">
220
- <strong>This method is part of a private API.</strong>
221
- You should avoid using this method if possible, as it may be removed or be changed in the future.
222
- </p>
223
-
224
- <p>Read any options supplied in the CSV file placed before the header row.</p>
185
+ <span class="summary_signature">
186
+
187
+ <a href="#normalize-class_method" title="normalize (class method)">.<strong>normalize</strong>(options)
188
+ &#x21d2; Hash </a>
189
+
190
+
191
+
192
+ </span>
193
+
194
+
195
+
196
+
197
+
198
+
199
+ <span class="private note title">private</span>
200
+
201
+
202
+ <span class="summary_desc">
203
+ <div class='inline'>
204
+ <p>Validate options and supply default values for any options not explicitly
205
+ set.</p>
206
+ </div>
207
+ </span>
208
+
209
+ </li>
210
+
211
+
212
+ </ul>
213
+
214
+
215
+
216
+
217
+ <div id="class_method_details" class="method_details_list">
218
+ <h2>Class Method Details</h2>
219
+
220
+
221
+ <div class="method_details first">
222
+ <h3 class="signature first" id="from_csv-class_method">
223
+
224
+ .<strong>from_csv</strong>(rows:, options:) &#x21d2; <tt>Hash</tt>
225
+
225
226
 
226
227
 
227
- </div>
228
- </div>
229
- <div class="tags">
230
- <p class="tag_title">Parameters:</p>
231
- <ul class="param">
232
-
233
- <li>
234
-
235
- <span class='name'>rows</span>
236
-
237
-
238
- <span class='type'>(<tt>Array&lt;Array&lt;String&gt;&gt;</tt>)</span>
239
-
240
-
241
-
242
- &mdash;
243
- <div class='inline'>
244
- <p>Table data rows.</p>
245
- </div>
246
-
247
- </li>
248
-
249
- <li>
250
-
251
- <span class='name'>options</span>
252
-
253
-
254
- <span class='type'>(<tt>Hash</tt>)</span>
255
-
256
-
257
-
258
- &mdash;
259
- <div class='inline'>
260
- <p>Input options hash built so far.</p>
261
- </div>
262
-
263
- </li>
264
-
265
- </ul>
266
-
267
- <p class="tag_title">Returns:</p>
268
- <ul class="return">
269
-
270
- <li>
271
-
272
-
273
- <span class='type'>(<tt>Hash</tt>)</span>
274
-
275
-
276
-
277
- &mdash;
278
- <div class='inline'>
279
- <p>Options hash overridden with any values found in the CSV file.</p>
280
- </div>
281
-
282
- </li>
283
-
284
- </ul>
285
-
286
- </div><table class="source_code">
287
- <tr>
288
- <td>
289
- <pre class="lines">
228
+
229
+
230
+ </h3>
231
+ <div class="docstring">
232
+ <div class="discussion">
233
+ <p class="note private">
234
+ <strong>This method is part of a private API.</strong>
235
+ You should avoid using this method if possible, as it may be removed or be changed in the future.
236
+ </p>
237
+
238
+ <p>Read any options supplied in the CSV file placed before the header row.</p>
239
+
240
+
241
+ </div>
242
+ </div>
243
+ <div class="tags">
244
+ <p class="tag_title">Parameters:</p>
245
+ <ul class="param">
246
+
247
+ <li>
248
+
249
+ <span class='name'>rows</span>
250
+
251
+
252
+ <span class='type'>(<tt>Array&lt;Array&lt;String&gt;&gt;</tt>)</span>
253
+
254
+
255
+
256
+ &mdash;
257
+ <div class='inline'>
258
+ <p>Table data rows.</p>
259
+ </div>
260
+
261
+ </li>
262
+
263
+ <li>
264
+
265
+ <span class='name'>options</span>
266
+
267
+
268
+ <span class='type'>(<tt>Hash</tt>)</span>
269
+
270
+
271
+
272
+ &mdash;
273
+ <div class='inline'>
274
+ <p>Input options hash built so far.</p>
275
+ </div>
276
+
277
+ </li>
278
+
279
+ </ul>
280
+
281
+ <p class="tag_title">Returns:</p>
282
+ <ul class="return">
283
+
284
+ <li>
285
+
286
+
287
+ <span class='type'>(<tt>Hash</tt>)</span>
288
+
289
+
290
+
291
+ &mdash;
292
+ <div class='inline'>
293
+ <p>Options hash overridden with any values found in the CSV file.</p>
294
+ </div>
295
+
296
+ </li>
297
+
298
+ </ul>
299
+
300
+ </div>
301
+ <table class="source_code">
302
+ <tr>
303
+ <td>
304
+ <pre class="lines">
290
305
 
291
306
 
292
307
  56
@@ -302,16 +317,16 @@ set.</p>
302
317
  66
303
318
  67
304
319
  68</pre>
305
- </td>
306
- <td>
307
- <pre class="code"><span class="info file"># File 'lib/csv_decision/options.rb', line 56</span>
320
+ </td>
321
+ <td>
322
+ <pre class="code"><span class="info file"># File 'lib/csv_decision2/options.rb', line 56</span>
308
323
 
309
324
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_from_csv'>from_csv</span><span class='lparen'>(</span><span class='label'>rows:</span><span class='comma'>,</span> <span class='label'>options:</span><span class='rparen'>)</span>
310
325
  <span class='id identifier rubyid_row'>row</span> <span class='op'>=</span> <span class='id identifier rubyid_rows'>rows</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
311
326
  <span class='kw'>return</span> <span class='id identifier rubyid_options'>options</span> <span class='kw'>if</span> <span class='id identifier rubyid_row'>row</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
312
327
 
313
328
  <span class='comment'># Have we hit the header row?
314
- </span> <span class='kw'>return</span> <span class='id identifier rubyid_options'>options</span> <span class='kw'>if</span> <span class='const'><span class='object_link'><a href="Header.html" title="CSVDecision::Header (module)">Header</a></span></span><span class='period'>.</span><span class='id identifier rubyid_row?'><span class='object_link'><a href="Header.html#row%3F-class_method" title="CSVDecision::Header.row? (method)">row?</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_row'>row</span><span class='rparen'>)</span>
329
+ </span> <span class='kw'>return</span> <span class='id identifier rubyid_options'>options</span> <span class='kw'>if</span> <span class='const'><span class='object_link'><a href="Header.html" title="CSVDecision2::Header (module)">Header</a></span></span><span class='period'>.</span><span class='id identifier rubyid_row?'><span class='object_link'><a href="Header.html#row%3F-class_method" title="CSVDecision2::Header.row? (method)">row?</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_row'>row</span><span class='rparen'>)</span>
315
330
 
316
331
  <span class='comment'># Scan each cell looking for valid option values
317
332
  </span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='id identifier rubyid_scan_cells'>scan_cells</span><span class='lparen'>(</span><span class='label'>row:</span> <span class='id identifier rubyid_row'>row</span><span class='comma'>,</span> <span class='label'>options:</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
@@ -319,125 +334,129 @@ set.</p>
319
334
  <span class='id identifier rubyid_rows'>rows</span><span class='period'>.</span><span class='id identifier rubyid_shift'>shift</span>
320
335
  <span class='id identifier rubyid_from_csv'>from_csv</span><span class='lparen'>(</span><span class='label'>rows:</span> <span class='id identifier rubyid_rows'>rows</span><span class='comma'>,</span> <span class='label'>options:</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
321
336
  <span class='kw'>end</span></pre>
322
- </td>
323
- </tr>
324
- </table>
325
- </div>
326
-
327
- <div class="method_details ">
328
- <h3 class="signature " id="normalize-class_method">
329
-
330
- .<strong>normalize</strong>(options) &#x21d2; <tt>Hash</tt>
331
-
332
-
333
-
334
-
335
-
336
- </h3><div class="docstring">
337
- <div class="discussion">
338
- <p class="note private">
339
- <strong>This method is part of a private API.</strong>
340
- You should avoid using this method if possible, as it may be removed or be changed in the future.
341
- </p>
342
-
343
- <p>Validate options and supply default values for any options not explicitly
344
- set.</p>
337
+ </td>
338
+ </tr>
339
+ </table>
340
+ </div>
341
+
342
+ <div class="method_details ">
343
+ <h3 class="signature " id="normalize-class_method">
344
+
345
+ .<strong>normalize</strong>(options) &#x21d2; <tt>Hash</tt>
346
+
347
+
345
348
 
346
349
 
347
- </div>
348
- </div>
349
- <div class="tags">
350
- <p class="tag_title">Parameters:</p>
351
- <ul class="param">
352
-
353
- <li>
354
-
355
- <span class='name'>options</span>
356
-
357
-
358
- <span class='type'>(<tt>Hash</tt>)</span>
359
-
360
-
361
-
362
- &mdash;
363
- <div class='inline'>
364
- <p>Input options hash supplied by the user.</p>
365
- </div>
366
-
367
- </li>
368
-
369
- </ul>
370
-
371
- <p class="tag_title">Returns:</p>
372
- <ul class="return">
373
-
374
- <li>
375
-
376
-
377
- <span class='type'>(<tt>Hash</tt>)</span>
378
-
379
-
380
-
381
- &mdash;
382
- <div class='inline'>
383
- <p>Options hash filled in with all required values, defaulted if necessary.</p>
384
- </div>
385
-
386
- </li>
387
-
388
- </ul>
389
- <p class="tag_title">Raises:</p>
390
- <ul class="raise">
391
-
392
- <li>
393
-
394
-
395
- <span class='type'>(<tt><span class='object_link'><a href="CellValidationError.html" title="CSVDecision::CellValidationError (class)">CellValidationError</a></span></tt>)</span>
396
-
397
-
398
-
399
- &mdash;
400
- <div class='inline'>
401
- <p>For invalid option keys.</p>
402
- </div>
403
-
404
- </li>
405
-
406
- </ul>
407
-
408
- </div><table class="source_code">
409
- <tr>
410
- <td>
411
- <pre class="lines">
350
+
351
+ </h3>
352
+ <div class="docstring">
353
+ <div class="discussion">
354
+ <p class="note private">
355
+ <strong>This method is part of a private API.</strong>
356
+ You should avoid using this method if possible, as it may be removed or be changed in the future.
357
+ </p>
358
+
359
+ <p>Validate options and supply default values for any options not explicitly
360
+ set.</p>
361
+
362
+
363
+ </div>
364
+ </div>
365
+ <div class="tags">
366
+ <p class="tag_title">Parameters:</p>
367
+ <ul class="param">
368
+
369
+ <li>
370
+
371
+ <span class='name'>options</span>
372
+
373
+
374
+ <span class='type'>(<tt>Hash</tt>)</span>
375
+
376
+
377
+
378
+ &mdash;
379
+ <div class='inline'>
380
+ <p>Input options hash supplied by the user.</p>
381
+ </div>
382
+
383
+ </li>
384
+
385
+ </ul>
386
+
387
+ <p class="tag_title">Returns:</p>
388
+ <ul class="return">
389
+
390
+ <li>
391
+
392
+
393
+ <span class='type'>(<tt>Hash</tt>)</span>
394
+
395
+
396
+
397
+ &mdash;
398
+ <div class='inline'>
399
+ <p>Options hash filled in with all required values, defaulted if necessary.</p>
400
+ </div>
401
+
402
+ </li>
403
+
404
+ </ul>
405
+ <p class="tag_title">Raises:</p>
406
+ <ul class="raise">
407
+
408
+ <li>
409
+
410
+
411
+ <span class='type'>(<tt><span class='object_link'><a href="CellValidationError.html"
412
+ title="CSVDecision2::CellValidationError (class)">CellValidationError</a></span></tt>)</span>
413
+
414
+
415
+
416
+ &mdash;
417
+ <div class='inline'>
418
+ <p>For invalid option keys.</p>
419
+ </div>
420
+
421
+ </li>
422
+
423
+ </ul>
424
+
425
+ </div>
426
+ <table class="source_code">
427
+ <tr>
428
+ <td>
429
+ <pre class="lines">
412
430
 
413
431
 
414
432
  46
415
433
  47
416
434
  48
417
435
  49</pre>
418
- </td>
419
- <td>
420
- <pre class="code"><span class="info file"># File 'lib/csv_decision/options.rb', line 46</span>
436
+ </td>
437
+ <td>
438
+ <pre class="code"><span class="info file"># File 'lib/csv_decision2/options.rb', line 46</span>
421
439
 
422
440
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_normalize'>normalize</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
423
441
  <span class='id identifier rubyid_validate'>validate</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
424
442
  <span class='id identifier rubyid_default'>default</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
425
443
  <span class='kw'>end</span></pre>
426
- </td>
427
- </tr>
428
- </table>
429
- </div>
430
-
431
- </div>
444
+ </td>
445
+ </tr>
446
+ </table>
447
+ </div>
432
448
 
433
- </div>
449
+ </div>
434
450
 
435
- <div id="footer">
436
- Generated on Sun Feb 11 10:26:07 2018 by
437
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
438
- 0.9.12 (ruby-2.4.0).
439
- </div>
451
+ </div>
440
452
 
453
+ <div id="footer">
454
+ Generated on Sun Feb 11 10:26:07 2018 by
455
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
456
+ 0.9.12 (ruby-2.4.0).
441
457
  </div>
442
- </body>
443
- </html>
458
+
459
+ </div>
460
+ </body>
461
+
462
+ </html>