syc-spector 0.0.1
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.
- data/README +17 -0
- data/bin/sycspector +7 -0
- data/doc/Inspector/Console.html +256 -0
- data/doc/Inspector/Options.html +301 -0
- data/doc/Inspector/Runner.html +239 -0
- data/doc/Inspector/Separator.html +456 -0
- data/doc/Inspector.html +157 -0
- data/doc/Object.html +165 -0
- data/doc/README.html +119 -0
- data/doc/TestConsole.html +143 -0
- data/doc/TestOptions.html +246 -0
- data/doc/TestSeparator.html +270 -0
- data/doc/created.rid +11 -0
- data/doc/images/add.png +0 -0
- data/doc/images/brick.png +0 -0
- data/doc/images/brick_link.png +0 -0
- data/doc/images/bug.png +0 -0
- data/doc/images/bullet_black.png +0 -0
- data/doc/images/bullet_toggle_minus.png +0 -0
- data/doc/images/bullet_toggle_plus.png +0 -0
- data/doc/images/date.png +0 -0
- data/doc/images/delete.png +0 -0
- data/doc/images/find.png +0 -0
- data/doc/images/loadingAnimation.gif +0 -0
- data/doc/images/macFFBgHack.png +0 -0
- data/doc/images/package.png +0 -0
- data/doc/images/page_green.png +0 -0
- data/doc/images/page_white_text.png +0 -0
- data/doc/images/page_white_width.png +0 -0
- data/doc/images/plugin.png +0 -0
- data/doc/images/ruby.png +0 -0
- data/doc/images/tag_blue.png +0 -0
- data/doc/images/tag_green.png +0 -0
- data/doc/images/transparent.png +0 -0
- data/doc/images/wrench.png +0 -0
- data/doc/images/wrench_orange.png +0 -0
- data/doc/images/zoom.png +0 -0
- data/doc/index.html +94 -0
- data/doc/js/darkfish.js +153 -0
- data/doc/js/jquery.js +18 -0
- data/doc/js/navigation.js +142 -0
- data/doc/js/search.js +94 -0
- data/doc/js/search_index.js +1 -0
- data/doc/js/searcher.js +228 -0
- data/doc/rdoc.css +543 -0
- data/doc/table_of_contents.html +109 -0
- data/lib/inspector/console.rb +60 -0
- data/lib/inspector/options.rb +212 -0
- data/lib/inspector/pattern.rb +11 -0
- data/lib/inspector/runner.rb +31 -0
- data/lib/inspector/separator.rb +182 -0
- data/sycspector.gemspec +18 -0
- data/test/test_console.rb +26 -0
- data/test/test_options.rb +115 -0
- data/test/test_separator.rb +118 -0
- metadata +140 -0
@@ -0,0 +1,456 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
6
|
+
|
7
|
+
<title>class Inspector::Separator - RDoc Documentation</title>
|
8
|
+
|
9
|
+
<link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet">
|
10
|
+
|
11
|
+
<script type="text/javascript">
|
12
|
+
var rdoc_rel_prefix = "../";
|
13
|
+
</script>
|
14
|
+
|
15
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
16
|
+
<script type="text/javascript" charset="utf-8" src="../js/navigation.js"></script>
|
17
|
+
<script type="text/javascript" charset="utf-8" src="../js/search_index.js"></script>
|
18
|
+
<script type="text/javascript" charset="utf-8" src="../js/search.js"></script>
|
19
|
+
<script type="text/javascript" charset="utf-8" src="../js/searcher.js"></script>
|
20
|
+
<script type="text/javascript" charset="utf-8" src="../js/darkfish.js"></script>
|
21
|
+
|
22
|
+
|
23
|
+
<body id="top" class="class">
|
24
|
+
<nav id="metadata">
|
25
|
+
<nav id="home-section" class="section">
|
26
|
+
<h3 class="section-header">
|
27
|
+
<a href="../index.html">Home</a>
|
28
|
+
<a href="../table_of_contents.html#classes">Classes</a>
|
29
|
+
<a href="../table_of_contents.html#methods">Methods</a>
|
30
|
+
</h3>
|
31
|
+
</nav>
|
32
|
+
|
33
|
+
|
34
|
+
<nav id="search-section" class="section project-section" class="initially-hidden">
|
35
|
+
<form action="#" method="get" accept-charset="utf-8">
|
36
|
+
<h3 class="section-header">
|
37
|
+
<input type="text" name="search" placeholder="Search" id="search-field"
|
38
|
+
title="Type to search, Up and Down to navigate, Enter to load">
|
39
|
+
</h3>
|
40
|
+
</form>
|
41
|
+
|
42
|
+
<ul id="search-results" class="initially-hidden"></ul>
|
43
|
+
</nav>
|
44
|
+
|
45
|
+
|
46
|
+
<div id="file-metadata">
|
47
|
+
<nav id="file-list-section" class="section">
|
48
|
+
<h3 class="section-header">Defined In</h3>
|
49
|
+
<ul>
|
50
|
+
<li>lib/inspector/separator.rb
|
51
|
+
</ul>
|
52
|
+
</nav>
|
53
|
+
|
54
|
+
|
55
|
+
</div>
|
56
|
+
|
57
|
+
<div id="class-metadata">
|
58
|
+
|
59
|
+
<nav id="parent-class-section" class="section">
|
60
|
+
<h3 class="section-header">Parent</h3>
|
61
|
+
|
62
|
+
<p class="link"><a href="../Object.html">Object</a>
|
63
|
+
|
64
|
+
</nav>
|
65
|
+
|
66
|
+
|
67
|
+
<!-- Method Quickref -->
|
68
|
+
<nav id="method-list-section" class="section">
|
69
|
+
<h3 class="section-header">Methods</h3>
|
70
|
+
|
71
|
+
<ul class="link-list">
|
72
|
+
|
73
|
+
<li><a href="#method-c-new">::new</a>
|
74
|
+
|
75
|
+
<li><a href="#method-i-fix">#fix</a>
|
76
|
+
|
77
|
+
<li><a href="#method-i-print_statistics">#print_statistics</a>
|
78
|
+
|
79
|
+
<li><a href="#method-i-process">#process</a>
|
80
|
+
|
81
|
+
</ul>
|
82
|
+
</nav>
|
83
|
+
|
84
|
+
</div>
|
85
|
+
|
86
|
+
<div id="project-metadata">
|
87
|
+
<nav id="fileindex-section" class="section project-section">
|
88
|
+
<h3 class="section-header">Pages</h3>
|
89
|
+
|
90
|
+
<ul>
|
91
|
+
|
92
|
+
<li class="file"><a href="../README.html">README</a>
|
93
|
+
|
94
|
+
</ul>
|
95
|
+
</nav>
|
96
|
+
|
97
|
+
<nav id="classindex-section" class="section project-section">
|
98
|
+
<h3 class="section-header">Class and Module Index</h3>
|
99
|
+
|
100
|
+
<ul class="link-list">
|
101
|
+
|
102
|
+
<li><a href="../Inspector.html">Inspector</a>
|
103
|
+
|
104
|
+
<li><a href="../Inspector/Console.html">Inspector::Console</a>
|
105
|
+
|
106
|
+
<li><a href="../Inspector/Options.html">Inspector::Options</a>
|
107
|
+
|
108
|
+
<li><a href="../Inspector/Runner.html">Inspector::Runner</a>
|
109
|
+
|
110
|
+
<li><a href="../Inspector/Separator.html">Inspector::Separator</a>
|
111
|
+
|
112
|
+
<li><a href="../Object.html">Object</a>
|
113
|
+
|
114
|
+
<li><a href="../TestConsole.html">TestConsole</a>
|
115
|
+
|
116
|
+
<li><a href="../TestOptions.html">TestOptions</a>
|
117
|
+
|
118
|
+
<li><a href="../TestSeparator.html">TestSeparator</a>
|
119
|
+
|
120
|
+
</ul>
|
121
|
+
</nav>
|
122
|
+
|
123
|
+
</div>
|
124
|
+
</nav>
|
125
|
+
|
126
|
+
<div id="documentation">
|
127
|
+
<h1 class="class">class Inspector::Separator</h1>
|
128
|
+
|
129
|
+
<div id="description" class="description">
|
130
|
+
|
131
|
+
<p>The <a href="Separator.html">Separator</a> scans the input file for a
|
132
|
+
provided pattern and prints the results of the scan to the console.</p>
|
133
|
+
|
134
|
+
</div><!-- description -->
|
135
|
+
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
<section id="5Buntitled-5D" class="documentation-section">
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
<!-- Constants -->
|
146
|
+
<section id="constants-list" class="section">
|
147
|
+
<h3 class="section-header">Constants</h3>
|
148
|
+
<dl>
|
149
|
+
|
150
|
+
<dt id="PROMPT_STRING">PROMPT_STRING
|
151
|
+
|
152
|
+
<dd class="description"><p>The prompt string is presented to the user when values are requested to be
|
153
|
+
fixed. (v)alid will add the value to the valid values without testing
|
154
|
+
against the pattern. (i)nvalid adds the value to the invalid values. (d)rop
|
155
|
+
discards the value, (s)can scans the line to look for the pattern. (f)ix
|
156
|
+
allows to type the corrected value.</p>
|
157
|
+
|
158
|
+
|
159
|
+
</dl>
|
160
|
+
</section>
|
161
|
+
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
<!-- Methods -->
|
166
|
+
|
167
|
+
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
168
|
+
<h3 class="section-header">Public Class Methods</h3>
|
169
|
+
|
170
|
+
|
171
|
+
<div id="method-c-new" class="method-detail ">
|
172
|
+
|
173
|
+
<div class="method-heading">
|
174
|
+
<span class="method-name">new</span><span
|
175
|
+
class="method-args">()</span>
|
176
|
+
<span class="method-click-advice">click to toggle source</span>
|
177
|
+
</div>
|
178
|
+
|
179
|
+
|
180
|
+
<div class="method-description">
|
181
|
+
|
182
|
+
<p>Initializes the <a href="Separator.html">Separator</a> and creating a <a
|
183
|
+
href="Console.html">Console</a> object</p>
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
<div class="method-source-code" id="new-source">
|
188
|
+
<pre><span class="ruby-comment"># File lib/inspector/separator.rb, line 23</span>
|
189
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>
|
190
|
+
<span class="ruby-ivar">@console</span> = <span class="ruby-constant">Console</span>.<span class="ruby-identifier">new</span>
|
191
|
+
<span class="ruby-keyword">end</span></pre>
|
192
|
+
</div><!-- new-source -->
|
193
|
+
|
194
|
+
</div>
|
195
|
+
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
</div><!-- new-method -->
|
200
|
+
|
201
|
+
|
202
|
+
</section><!-- public-class-method-details -->
|
203
|
+
|
204
|
+
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
205
|
+
<h3 class="section-header">Public Instance Methods</h3>
|
206
|
+
|
207
|
+
|
208
|
+
<div id="method-i-fix" class="method-detail ">
|
209
|
+
|
210
|
+
|
211
|
+
<div class="method-heading">
|
212
|
+
<span class="method-callseq">
|
213
|
+
fix(value, pattern) → hash
|
214
|
+
</span>
|
215
|
+
|
216
|
+
<span class="method-click-advice">click to toggle source</span>
|
217
|
+
|
218
|
+
</div>
|
219
|
+
|
220
|
+
|
221
|
+
|
222
|
+
<div class="method-description">
|
223
|
+
|
224
|
+
<p>Prompts the <a href="Separator.html#PROMPT_STRING">PROMPT_STRING</a> and
|
225
|
+
tests the value against the pattern</p>
|
226
|
+
|
227
|
+
<p>Return a hash with :value and :answer where :value contains the fixed value
|
228
|
+
and the answer. To test whether the value is valid or invalid the :answer
|
229
|
+
has to checked first.</p>
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
<div class="method-source-code" id="fix-source">
|
234
|
+
<pre><span class="ruby-comment"># File lib/inspector/separator.rb, line 68</span>
|
235
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">fix</span>(<span class="ruby-identifier">value</span>, <span class="ruby-identifier">pattern</span>)
|
236
|
+
<span class="ruby-identifier">choice</span> = <span class="ruby-identifier">value</span>
|
237
|
+
<span class="ruby-identifier">result</span> = {}
|
238
|
+
|
239
|
+
<span class="ruby-keyword">while</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">pattern</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">choice</span>)
|
240
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-node">"-> #{choice}?"</span>
|
241
|
+
<span class="ruby-identifier">result</span>[<span class="ruby-value">:answer</span>] = <span class="ruby-ivar">@console</span>.<span class="ruby-identifier">prompt</span> <span class="ruby-constant">PROMPT_STRING</span>
|
242
|
+
<span class="ruby-keyword">case</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:answer</span>]
|
243
|
+
<span class="ruby-keyword">when</span> <span class="ruby-string">'v'</span>
|
244
|
+
<span class="ruby-identifier">result</span>[<span class="ruby-value">:value</span>] = <span class="ruby-identifier">choice</span>
|
245
|
+
<span class="ruby-keyword">break</span>
|
246
|
+
<span class="ruby-keyword">when</span> <span class="ruby-string">'i'</span>
|
247
|
+
<span class="ruby-identifier">result</span>[<span class="ruby-value">:value</span>] = <span class="ruby-identifier">choice</span>
|
248
|
+
<span class="ruby-keyword">break</span>
|
249
|
+
<span class="ruby-keyword">when</span> <span class="ruby-string">'f'</span>
|
250
|
+
<span class="ruby-identifier">print</span> <span class="ruby-string">"-> fix: "</span>
|
251
|
+
<span class="ruby-identifier">choice</span> = <span class="ruby-identifier">gets</span>.<span class="ruby-identifier">chomp</span>
|
252
|
+
<span class="ruby-identifier">print</span> <span class="ruby-string">"-> confirm "</span>
|
253
|
+
<span class="ruby-keyword">redo</span>
|
254
|
+
<span class="ruby-keyword">when</span> <span class="ruby-string">'d'</span>
|
255
|
+
<span class="ruby-identifier">result</span>[<span class="ruby-value">:value</span>] = <span class="ruby-identifier">value</span>
|
256
|
+
<span class="ruby-keyword">break</span>
|
257
|
+
<span class="ruby-keyword">when</span> <span class="ruby-string">'s'</span>
|
258
|
+
<span class="ruby-identifier">result</span>[<span class="ruby-value">:value</span>] = <span class="ruby-identifier">value</span>
|
259
|
+
<span class="ruby-keyword">break</span>
|
260
|
+
<span class="ruby-keyword">end</span>
|
261
|
+
<span class="ruby-keyword">end</span>
|
262
|
+
|
263
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">result</span>
|
264
|
+
<span class="ruby-keyword">end</span></pre>
|
265
|
+
</div><!-- fix-source -->
|
266
|
+
|
267
|
+
</div>
|
268
|
+
|
269
|
+
|
270
|
+
|
271
|
+
|
272
|
+
</div><!-- fix-method -->
|
273
|
+
|
274
|
+
|
275
|
+
<div id="method-i-print_statistics" class="method-detail ">
|
276
|
+
|
277
|
+
|
278
|
+
<div class="method-heading">
|
279
|
+
<span class="method-callseq">
|
280
|
+
print_statistics(opts)
|
281
|
+
</span>
|
282
|
+
|
283
|
+
<span class="method-click-advice">click to toggle source</span>
|
284
|
+
|
285
|
+
</div>
|
286
|
+
|
287
|
+
|
288
|
+
|
289
|
+
<div class="method-description">
|
290
|
+
|
291
|
+
<p>Prints the results of the invokation of <a
|
292
|
+
href="Separator.html#method-i-process">#process</a></p>
|
293
|
+
|
294
|
+
|
295
|
+
|
296
|
+
<div class="method-source-code" id="print_statistics-source">
|
297
|
+
<pre><span class="ruby-comment"># File lib/inspector/separator.rb, line 31</span>
|
298
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">print_statistics</span>(<span class="ruby-identifier">opts</span>)
|
299
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">"-> statistics"</span>
|
300
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">" ----------"</span>
|
301
|
+
<span class="ruby-identifier">printf</span>(<span class="ruby-string">"%7s: %4d\n%7s: %4d\n%7s: %4d\n%7s: %4d\n%7s: %4d\n"</span>,
|
302
|
+
<span class="ruby-string">" total"</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:valid_counter</span>] <span class="ruby-operator">+</span>
|
303
|
+
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:invalid_counter</span>] <span class="ruby-operator">+</span>
|
304
|
+
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:skip_counter</span>] <span class="ruby-operator">+</span>
|
305
|
+
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:double_counter</span>],
|
306
|
+
<span class="ruby-string">" valid"</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:valid_counter</span>],
|
307
|
+
<span class="ruby-string">" invalid"</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:invalid_counter</span>],
|
308
|
+
<span class="ruby-string">" drop"</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:skip_counter</span>],
|
309
|
+
<span class="ruby-string">" double"</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:double_counter</span>])
|
310
|
+
<span class="ruby-identifier">puts</span>
|
311
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-node">"-> pattern: #{opts[:pattern].inspect}"</span>
|
312
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-node">"-> scan pattern: #{opts[:scan_pattern].inspect}"</span>
|
313
|
+
<span class="ruby-identifier">puts</span>
|
314
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">"-> files operated on"</span>
|
315
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">" -----------------"</span>
|
316
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-node">" values read from: #{opts[:infile]}"</span>
|
317
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-node">" valid values written to: #{opts[:valid_file]}"</span>
|
318
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-node">" invalid values written to: #{opts[:invalid_file]}"</span>
|
319
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:note</span>]
|
320
|
+
<span class="ruby-identifier">puts</span>
|
321
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">"-> Note"</span>
|
322
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">" ----"</span>
|
323
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:note</span>]
|
324
|
+
<span class="ruby-keyword">end</span>
|
325
|
+
<span class="ruby-keyword">end</span></pre>
|
326
|
+
</div><!-- print_statistics-source -->
|
327
|
+
|
328
|
+
</div>
|
329
|
+
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
</div><!-- print_statistics-method -->
|
334
|
+
|
335
|
+
|
336
|
+
<div id="method-i-process" class="method-detail ">
|
337
|
+
|
338
|
+
|
339
|
+
<div class="method-heading">
|
340
|
+
<span class="method-callseq">
|
341
|
+
process(opts)
|
342
|
+
</span>
|
343
|
+
|
344
|
+
<span class="method-click-advice">click to toggle source</span>
|
345
|
+
|
346
|
+
</div>
|
347
|
+
|
348
|
+
|
349
|
+
|
350
|
+
<div class="method-description">
|
351
|
+
|
352
|
+
<p>Processes the scan of the lines of the file and add the values eather to
|
353
|
+
the valid or invalid values. The result of the scan will be added to the
|
354
|
+
opts.</p>
|
355
|
+
|
356
|
+
|
357
|
+
|
358
|
+
<div class="method-source-code" id="process-source">
|
359
|
+
<pre><span class="ruby-comment"># File lib/inspector/separator.rb, line 105</span>
|
360
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">opts</span>)
|
361
|
+
<span class="ruby-identifier">valid_file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">opts</span>[<span class="ruby-value">:valid_file</span>], <span class="ruby-identifier">opts</span>[<span class="ruby-value">:mode</span>])
|
362
|
+
<span class="ruby-identifier">valid_values</span> = []
|
363
|
+
|
364
|
+
<span class="ruby-identifier">invalid_file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">opts</span>[<span class="ruby-value">:invalid_file</span>], <span class="ruby-string">'w'</span>)
|
365
|
+
<span class="ruby-identifier">invalid_values</span> = []
|
366
|
+
|
367
|
+
<span class="ruby-identifier">skip_counter</span> = <span class="ruby-value">0</span>
|
368
|
+
|
369
|
+
<span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">opts</span>[<span class="ruby-value">:infile</span>], <span class="ruby-string">'r'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
370
|
+
<span class="ruby-keyword">while</span> <span class="ruby-identifier">line</span> = <span class="ruby-identifier">file</span>.<span class="ruby-identifier">gets</span>
|
371
|
+
<span class="ruby-identifier">line</span>.<span class="ruby-identifier">chomp</span>.<span class="ruby-identifier">split</span>(<span class="ruby-identifier">opts</span>[<span class="ruby-value">:delimiter</span>]).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
372
|
+
|
373
|
+
<span class="ruby-identifier">match</span> = <span class="ruby-identifier">value</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">opts</span>[<span class="ruby-value">:pattern</span>])
|
374
|
+
|
375
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">match</span>.<span class="ruby-identifier">nil?</span>
|
376
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:fix</span>]
|
377
|
+
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">fix</span> <span class="ruby-identifier">value</span>, <span class="ruby-identifier">opts</span>[<span class="ruby-value">:pattern</span>]
|
378
|
+
<span class="ruby-keyword">case</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:answer</span>]
|
379
|
+
<span class="ruby-keyword">when</span> <span class="ruby-string">'v'</span>
|
380
|
+
<span class="ruby-identifier">valid_values</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:value</span>]
|
381
|
+
<span class="ruby-keyword">when</span> <span class="ruby-string">'i'</span>
|
382
|
+
<span class="ruby-identifier">invalid_values</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:value</span>]
|
383
|
+
<span class="ruby-keyword">when</span> <span class="ruby-string">'d'</span>
|
384
|
+
<span class="ruby-identifier">skip_counter</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
385
|
+
<span class="ruby-keyword">when</span> <span class="ruby-string">'s'</span>
|
386
|
+
<span class="ruby-identifier">value</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-identifier">opts</span>[<span class="ruby-value">:scan_pattern</span>]).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
387
|
+
<span class="ruby-identifier">valid_values</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">value</span>
|
388
|
+
<span class="ruby-keyword">end</span>
|
389
|
+
<span class="ruby-keyword">end</span>
|
390
|
+
<span class="ruby-keyword">else</span>
|
391
|
+
<span class="ruby-identifier">invalid_values</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">value</span>
|
392
|
+
<span class="ruby-keyword">end</span>
|
393
|
+
<span class="ruby-keyword">else</span>
|
394
|
+
<span class="ruby-identifier">valid_values</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">match</span>
|
395
|
+
<span class="ruby-keyword">end</span>
|
396
|
+
<span class="ruby-keyword">end</span>
|
397
|
+
<span class="ruby-keyword">end</span>
|
398
|
+
<span class="ruby-keyword">end</span>
|
399
|
+
|
400
|
+
<span class="ruby-identifier">valid_counter</span> = <span class="ruby-identifier">valid_values</span>.<span class="ruby-identifier">size</span>
|
401
|
+
|
402
|
+
<span class="ruby-identifier">valid_values</span>.<span class="ruby-identifier">uniq!</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">value</span><span class="ruby-operator">|</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">downcase</span> } <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:individualize</span>]
|
403
|
+
<span class="ruby-identifier">valid_values</span>.<span class="ruby-identifier">sort!</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:sort</span>]
|
404
|
+
|
405
|
+
<span class="ruby-identifier">valid_values</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
406
|
+
<span class="ruby-identifier">valid_file</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">value</span>
|
407
|
+
<span class="ruby-keyword">end</span>
|
408
|
+
|
409
|
+
<span class="ruby-identifier">invalid_counter</span> = <span class="ruby-identifier">invalid_values</span>.<span class="ruby-identifier">size</span>
|
410
|
+
|
411
|
+
<span class="ruby-identifier">invalid_values</span>.<span class="ruby-identifier">uniq!</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">value</span><span class="ruby-operator">|</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">downcase</span>} <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:individualize</span>]
|
412
|
+
<span class="ruby-identifier">invalid_values</span>.<span class="ruby-identifier">sort!</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:sort</span>]
|
413
|
+
|
414
|
+
<span class="ruby-identifier">invalid_values</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
415
|
+
<span class="ruby-identifier">invalid_file</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">value</span>
|
416
|
+
<span class="ruby-keyword">end</span>
|
417
|
+
|
418
|
+
<span class="ruby-identifier">valid_file</span>.<span class="ruby-identifier">close</span>
|
419
|
+
<span class="ruby-identifier">invalid_file</span>.<span class="ruby-identifier">close</span>
|
420
|
+
|
421
|
+
<span class="ruby-identifier">double_counter</span> = <span class="ruby-identifier">valid_counter</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">valid_values</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">+</span>
|
422
|
+
<span class="ruby-identifier">invalid_counter</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">invalid_values</span>.<span class="ruby-identifier">size</span>
|
423
|
+
|
424
|
+
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:valid_counter</span>] = <span class="ruby-identifier">valid_values</span>.<span class="ruby-identifier">size</span>
|
425
|
+
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:invalid_counter</span>] = <span class="ruby-identifier">invalid_values</span>.<span class="ruby-identifier">size</span>
|
426
|
+
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:skip_counter</span>] = <span class="ruby-identifier">skip_counter</span>
|
427
|
+
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:double_counter</span>] = <span class="ruby-identifier">double_counter</span>
|
428
|
+
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">invalid_values</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span> <span class="ruby-keyword">and</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:fix</span>])
|
429
|
+
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:note</span>] = <span class="ruby-string">" You can fix invalid values and append "</span> <span class="ruby-operator">+</span>
|
430
|
+
<span class="ruby-string">"to valid with: $ sycspector -fa"</span>
|
431
|
+
<span class="ruby-keyword">end</span>
|
432
|
+
|
433
|
+
<span class="ruby-keyword">end</span></pre>
|
434
|
+
</div><!-- process-source -->
|
435
|
+
|
436
|
+
</div>
|
437
|
+
|
438
|
+
|
439
|
+
|
440
|
+
|
441
|
+
</div><!-- process-method -->
|
442
|
+
|
443
|
+
|
444
|
+
</section><!-- public-instance-method-details -->
|
445
|
+
|
446
|
+
</section><!-- 5Buntitled-5D -->
|
447
|
+
|
448
|
+
</div><!-- documentation -->
|
449
|
+
|
450
|
+
|
451
|
+
<footer id="validator-badges">
|
452
|
+
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
453
|
+
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
454
|
+
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
455
|
+
</footer>
|
456
|
+
|
data/doc/Inspector.html
ADDED
@@ -0,0 +1,157 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
6
|
+
|
7
|
+
<title>module Inspector - RDoc Documentation</title>
|
8
|
+
|
9
|
+
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
10
|
+
|
11
|
+
<script type="text/javascript">
|
12
|
+
var rdoc_rel_prefix = "./";
|
13
|
+
</script>
|
14
|
+
|
15
|
+
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
16
|
+
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
17
|
+
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
18
|
+
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
19
|
+
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
20
|
+
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
21
|
+
|
22
|
+
|
23
|
+
<body id="top" class="module">
|
24
|
+
<nav id="metadata">
|
25
|
+
<nav id="home-section" class="section">
|
26
|
+
<h3 class="section-header">
|
27
|
+
<a href="./index.html">Home</a>
|
28
|
+
<a href="./table_of_contents.html#classes">Classes</a>
|
29
|
+
<a href="./table_of_contents.html#methods">Methods</a>
|
30
|
+
</h3>
|
31
|
+
</nav>
|
32
|
+
|
33
|
+
|
34
|
+
<nav id="search-section" class="section project-section" class="initially-hidden">
|
35
|
+
<form action="#" method="get" accept-charset="utf-8">
|
36
|
+
<h3 class="section-header">
|
37
|
+
<input type="text" name="search" placeholder="Search" id="search-field"
|
38
|
+
title="Type to search, Up and Down to navigate, Enter to load">
|
39
|
+
</h3>
|
40
|
+
</form>
|
41
|
+
|
42
|
+
<ul id="search-results" class="initially-hidden"></ul>
|
43
|
+
</nav>
|
44
|
+
|
45
|
+
|
46
|
+
<div id="file-metadata">
|
47
|
+
<nav id="file-list-section" class="section">
|
48
|
+
<h3 class="section-header">Defined In</h3>
|
49
|
+
<ul>
|
50
|
+
<li>lib/inspector/separator.rb
|
51
|
+
<li>lib/inspector/options.rb
|
52
|
+
<li>lib/inspector/console.rb
|
53
|
+
<li>lib/inspector/runner.rb
|
54
|
+
</ul>
|
55
|
+
</nav>
|
56
|
+
|
57
|
+
|
58
|
+
</div>
|
59
|
+
|
60
|
+
<div id="class-metadata">
|
61
|
+
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
</div>
|
66
|
+
|
67
|
+
<div id="project-metadata">
|
68
|
+
<nav id="fileindex-section" class="section project-section">
|
69
|
+
<h3 class="section-header">Pages</h3>
|
70
|
+
|
71
|
+
<ul>
|
72
|
+
|
73
|
+
<li class="file"><a href="./README.html">README</a>
|
74
|
+
|
75
|
+
</ul>
|
76
|
+
</nav>
|
77
|
+
|
78
|
+
<nav id="classindex-section" class="section project-section">
|
79
|
+
<h3 class="section-header">Class and Module Index</h3>
|
80
|
+
|
81
|
+
<ul class="link-list">
|
82
|
+
|
83
|
+
<li><a href="./Inspector.html">Inspector</a>
|
84
|
+
|
85
|
+
<li><a href="./Inspector/Console.html">Inspector::Console</a>
|
86
|
+
|
87
|
+
<li><a href="./Inspector/Options.html">Inspector::Options</a>
|
88
|
+
|
89
|
+
<li><a href="./Inspector/Runner.html">Inspector::Runner</a>
|
90
|
+
|
91
|
+
<li><a href="./Inspector/Separator.html">Inspector::Separator</a>
|
92
|
+
|
93
|
+
<li><a href="./Object.html">Object</a>
|
94
|
+
|
95
|
+
<li><a href="./TestConsole.html">TestConsole</a>
|
96
|
+
|
97
|
+
<li><a href="./TestOptions.html">TestOptions</a>
|
98
|
+
|
99
|
+
<li><a href="./TestSeparator.html">TestSeparator</a>
|
100
|
+
|
101
|
+
</ul>
|
102
|
+
</nav>
|
103
|
+
|
104
|
+
</div>
|
105
|
+
</nav>
|
106
|
+
|
107
|
+
<div id="documentation">
|
108
|
+
<h1 class="module">module Inspector</h1>
|
109
|
+
|
110
|
+
<div id="description" class="description">
|
111
|
+
|
112
|
+
<p>This module encapsulates functionality related to scanning values for
|
113
|
+
patterns. If a line contains the pattern that line is added to valid files.
|
114
|
+
If the pattern is not found in the line the line is added to invalid files.
|
115
|
+
Lines can if requested to be fixed. The line is presented to the user and
|
116
|
+
the user can eather fix the value by typing the corrected value. Other
|
117
|
+
possibilities are to drop the line, scan the line or just considering the
|
118
|
+
line as valid so it is added to valid values.</p>
|
119
|
+
|
120
|
+
<p>Module <a href="Inspector.html">Inspector</a> contains the functions
|
121
|
+
related to the command line parsing. Provides the parsed user input in the
|
122
|
+
options hash.</p>
|
123
|
+
|
124
|
+
<p>Module <a href="Inspector.html">Inspector</a> contains functions related to
|
125
|
+
the <a href="Inspector/Console.html">Console</a> that is helpers for user
|
126
|
+
input</p>
|
127
|
+
|
128
|
+
<p>Module <a href="Inspector.html">Inspector</a> contains functions related to
|
129
|
+
running the application</p>
|
130
|
+
|
131
|
+
</div><!-- description -->
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
|
136
|
+
<section id="5Buntitled-5D" class="documentation-section">
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
<!-- Methods -->
|
146
|
+
|
147
|
+
</section><!-- 5Buntitled-5D -->
|
148
|
+
|
149
|
+
</div><!-- documentation -->
|
150
|
+
|
151
|
+
|
152
|
+
<footer id="validator-badges">
|
153
|
+
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
154
|
+
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
155
|
+
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
156
|
+
</footer>
|
157
|
+
|