lab419-config 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.
@@ -0,0 +1,604 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
+ <head>
6
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
7
+
8
+ <title>Class: Lab419::Config::Reader</title>
9
+
10
+ <link rel="stylesheet" href="../../rdoc.css" type="text/css" media="screen" />
11
+
12
+ <script src="../../js/jquery.js" type="text/javascript"
13
+ charset="utf-8"></script>
14
+ <script src="../../js/thickbox-compressed.js" type="text/javascript"
15
+ charset="utf-8"></script>
16
+ <script src="../../js/quicksearch.js" type="text/javascript"
17
+ charset="utf-8"></script>
18
+ <script src="../../js/darkfish.js" type="text/javascript"
19
+ charset="utf-8"></script>
20
+
21
+ </head>
22
+ <body class="class">
23
+
24
+ <div id="metadata">
25
+ <div id="home-metadata">
26
+ <div id="home-section" class="section">
27
+ <h3 class="section-header">
28
+ <a href="../../index.html">Home</a>
29
+ <a href="../../index.html#classes">Classes</a>
30
+ <a href="../../index.html#methods">Methods</a>
31
+ </h3>
32
+ </div>
33
+ </div>
34
+
35
+ <div id="file-metadata">
36
+ <div id="file-list-section" class="section">
37
+ <h3 class="section-header">In Files</h3>
38
+ <div class="section-body">
39
+ <ul>
40
+
41
+ <li><a href="../../lab419/config/reader_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
42
+ class="thickbox" title="lab419/config/reader.rb">lab419/config/reader.rb</a></li>
43
+
44
+ </ul>
45
+ </div>
46
+ </div>
47
+
48
+
49
+ </div>
50
+
51
+ <div id="class-metadata">
52
+
53
+ <!-- Parent Class -->
54
+
55
+ <div id="parent-class-section" class="section">
56
+ <h3 class="section-header">Parent</h3>
57
+
58
+ <p class="link">Object</p>
59
+
60
+ </div>
61
+
62
+
63
+ <!-- Namespace Contents -->
64
+
65
+
66
+ <!-- Method Quickref -->
67
+
68
+ <div id="method-list-section" class="section">
69
+ <h3 class="section-header">Methods</h3>
70
+ <ul class="link-list">
71
+
72
+ <li><a href="#M000024">::new</a></li>
73
+
74
+ <li><a href="#M000022">#comment</a></li>
75
+
76
+ <li><a href="#M000019">#handle</a></li>
77
+
78
+ <li><a href="#M000025">#init_handlers</a></li>
79
+
80
+ <li><a href="#M000026">#init_source</a></li>
81
+
82
+ <li><a href="#M000018">#parsed?</a></li>
83
+
84
+ <li><a href="#M000023">#separator_rgx</a></li>
85
+
86
+ <li><a href="#M000027">#syntax_error</a></li>
87
+
88
+ <li><a href="#M000020">#with_file</a></li>
89
+
90
+ <li><a href="#M000021">#with_string</a></li>
91
+
92
+ </ul>
93
+ </div>
94
+
95
+
96
+ <!-- Included Modules -->
97
+
98
+ <div id="includes-section" class="section">
99
+ <h3 class="section-header">Included Modules</h3>
100
+ <ul class="link-list">
101
+
102
+
103
+ <li><span class="include">Parser</span></li>
104
+
105
+
106
+ </ul>
107
+ </div>
108
+
109
+ </div>
110
+
111
+ <div id="project-metadata">
112
+
113
+
114
+
115
+ <div id="classindex-section" class="section project-section">
116
+ <h3 class="section-header">Class Index
117
+ <span class="search-toggle"><img src="../../images/find.png"
118
+ height="16" width="16" alt="[+]"
119
+ title="show/hide quicksearch" /></span></h3>
120
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
121
+ <fieldset>
122
+ <legend>Quicksearch</legend>
123
+ <input type="text" name="quicksearch" value=""
124
+ class="quicksearch-field" />
125
+ </fieldset>
126
+ </form>
127
+
128
+ <ul class="link-list">
129
+
130
+ <li><a href="../../Lab419.html">Lab419</a></li>
131
+
132
+ <li><a href="../../Lab419/Config.html">Lab419::Config</a></li>
133
+
134
+ <li><a href="../../Lab419/Config/Data.html">Lab419::Config::Data</a></li>
135
+
136
+ <li><a href="../../Lab419/Config/Parser.html">Lab419::Config::Parser</a></li>
137
+
138
+ <li><a href="../../Lab419/Config/Reader.html">Lab419::Config::Reader</a></li>
139
+
140
+ <li><a href="../../Lab419/Config/Source.html">Lab419::Config::Source</a></li>
141
+
142
+ </ul>
143
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
144
+ </div>
145
+
146
+
147
+ </div>
148
+ </div>
149
+
150
+ <div id="documentation">
151
+ <h1 class="class">Lab419::Config::Reader</h1>
152
+
153
+ <div id="description">
154
+ <p>
155
+ no specs imply its usage yet
156
+ </p>
157
+
158
+ </div>
159
+
160
+ <!-- Constants -->
161
+
162
+
163
+ <!-- Attributes -->
164
+
165
+ <div id="attribute-method-details" class="method-section section">
166
+ <h3 class="section-header">Attributes</h3>
167
+
168
+
169
+ <div id="config-attribute-method" class="method-detail">
170
+ <a name="config"></a>
171
+
172
+ <div class="method-heading attribute-method-heading">
173
+ <span class="method-name">config</span><span
174
+ class="attribute-access-type">[R]</span>
175
+ </div>
176
+
177
+ <div class="method-description">
178
+
179
+
180
+
181
+ </div>
182
+ </div>
183
+
184
+ <div id="name-attribute-method" class="method-detail">
185
+ <a name="name"></a>
186
+
187
+ <div class="method-heading attribute-method-heading">
188
+ <span class="method-name">name</span><span
189
+ class="attribute-access-type">[R]</span>
190
+ </div>
191
+
192
+ <div class="method-description">
193
+
194
+
195
+
196
+ </div>
197
+ </div>
198
+
199
+ </div>
200
+
201
+
202
+ <!-- Methods -->
203
+
204
+ <div id="public-class-method-details" class="method-section section">
205
+ <h3 class="section-header">Public Class Methods</h3>
206
+
207
+
208
+ <div id="new-method" class="method-detail ">
209
+ <a name="M000024"></a>
210
+
211
+ <div class="method-heading">
212
+
213
+ <span class="method-name">new</span><span
214
+ class="method-args">(input=nil)</span>
215
+ <span class="method-click-advice">click to toggle source</span>
216
+
217
+ </div>
218
+
219
+ <div class="method-description">
220
+
221
+
222
+
223
+
224
+
225
+ <div class="method-source-code"
226
+ id="new-source">
227
+ <pre>
228
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 48</span>
229
+ 48: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span> <span class="ruby-identifier">input</span>=<span class="ruby-keyword kw">nil</span>
230
+ 49: <span class="ruby-ivar">@config</span> = <span class="ruby-constant">Data</span><span class="ruby-operator">::</span><span class="ruby-identifier">new</span>
231
+ 50: <span class="ruby-ivar">@params</span> = {}
232
+ 51: <span class="ruby-ivar">@source</span> = <span class="ruby-keyword kw">nil</span>
233
+ 52: <span class="ruby-ivar">@parsed</span> = <span class="ruby-keyword kw">false</span>
234
+ 53: <span class="ruby-identifier">init_source</span> <span class="ruby-identifier">input</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">input</span>
235
+ 54: <span class="ruby-identifier">init_handlers</span>
236
+ 55: <span class="ruby-keyword kw">end</span></pre>
237
+ </div>
238
+
239
+ </div>
240
+
241
+
242
+
243
+
244
+ </div>
245
+
246
+
247
+ </div>
248
+
249
+ <div id="public-instance-method-details" class="method-section section">
250
+ <h3 class="section-header">Public Instance Methods</h3>
251
+
252
+
253
+ <div id="handle-method" class="method-detail ">
254
+ <a name="M000019"></a>
255
+
256
+ <div class="method-heading">
257
+
258
+ <span class="method-name">handle</span><span
259
+ class="method-args">(trigger_rgx, message_name = nil, &blk)</span>
260
+ <span class="method-click-advice">click to toggle source</span>
261
+
262
+ </div>
263
+
264
+ <div class="method-description">
265
+
266
+
267
+
268
+
269
+
270
+ <div class="method-source-code"
271
+ id="handle-source">
272
+ <pre>
273
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 19</span>
274
+ 19: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">handle</span> <span class="ruby-identifier">trigger_rgx</span>, <span class="ruby-identifier">message_name</span> = <span class="ruby-keyword kw">nil</span>, &amp;<span class="ruby-identifier">blk</span>
275
+ 20: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">message_name</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">blk</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">blk</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">message_name</span>.<span class="ruby-identifier">nil?</span>
276
+ 21: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">&quot;please specify a message_name *or* a block, not both or none&quot;</span>
277
+ 22: <span class="ruby-keyword kw">end</span>
278
+ 23: <span class="ruby-ivar">@handlers</span>.<span class="ruby-identifier">update</span>( <span class="ruby-identifier">trigger_rgx</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">message_name</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">blk</span> )
279
+ 24: <span class="ruby-keyword kw">end</span></pre>
280
+ </div>
281
+
282
+ </div>
283
+
284
+
285
+
286
+
287
+ </div>
288
+
289
+
290
+ <div id="parsed--method" class="method-detail ">
291
+ <a name="M000018"></a>
292
+
293
+ <div class="method-heading">
294
+
295
+ <span class="method-name">parsed?</span><span
296
+ class="method-args">()</span>
297
+ <span class="method-click-advice">click to toggle source</span>
298
+
299
+ </div>
300
+
301
+ <div class="method-description">
302
+
303
+
304
+
305
+
306
+
307
+ <div class="method-source-code"
308
+ id="parsed--source">
309
+ <pre>
310
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 17</span>
311
+ 17: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parsed?</span>; <span class="ruby-ivar">@parsed</span> <span class="ruby-keyword kw">end</span></pre>
312
+ </div>
313
+
314
+ </div>
315
+
316
+
317
+
318
+
319
+ </div>
320
+
321
+
322
+ <div id="with-file-method" class="method-detail ">
323
+ <a name="M000020"></a>
324
+
325
+ <div class="method-heading">
326
+
327
+ <span class="method-name">with_file</span><span
328
+ class="method-args">(filename, &blk)</span>
329
+ <span class="method-click-advice">click to toggle source</span>
330
+
331
+ </div>
332
+
333
+ <div class="method-description">
334
+
335
+
336
+
337
+
338
+
339
+ <div class="method-source-code"
340
+ id="with-file-source">
341
+ <pre>
342
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 25</span>
343
+ 25: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">with_file</span> <span class="ruby-identifier">filename</span>, &amp;<span class="ruby-identifier">blk</span>
344
+ 26: <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>( <span class="ruby-identifier">filename</span> ) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span> <span class="ruby-identifier">f</span> <span class="ruby-operator">|</span>
345
+ 27: <span class="ruby-identifier">init_source</span> <span class="ruby-identifier">f</span>, <span class="ruby-identifier">filename</span>
346
+ 28: <span class="ruby-keyword kw">end</span>
347
+ 29: <span class="ruby-identifier">blk</span>[<span class="ruby-keyword kw">self</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">blk</span>
348
+ 30: <span class="ruby-keyword kw">self</span>
349
+ 31: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Errno</span><span class="ruby-operator">::</span><span class="ruby-constant">ENOENT</span>
350
+ 32: <span class="ruby-identifier">raise</span> <span class="ruby-constant">DataError</span>, <span class="ruby-node">&quot;hmm file: '#{filename}' does not seem to be readable!&quot;</span>
351
+ 33: <span class="ruby-keyword kw">end</span></pre>
352
+ </div>
353
+
354
+ </div>
355
+
356
+
357
+
358
+
359
+ </div>
360
+
361
+
362
+ <div id="with-string-method" class="method-detail ">
363
+ <a name="M000021"></a>
364
+
365
+ <div class="method-heading">
366
+
367
+ <span class="method-name">with_string</span><span
368
+ class="method-args">(string, &blk)</span>
369
+ <span class="method-click-advice">click to toggle source</span>
370
+
371
+ </div>
372
+
373
+ <div class="method-description">
374
+
375
+
376
+
377
+
378
+
379
+ <div class="method-source-code"
380
+ id="with-string-source">
381
+ <pre>
382
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 35</span>
383
+ 35: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">with_string</span> <span class="ruby-identifier">string</span>, &amp;<span class="ruby-identifier">blk</span>
384
+ 36: <span class="ruby-identifier">init_source</span> <span class="ruby-identifier">string</span>
385
+ 37: <span class="ruby-identifier">blk</span>[<span class="ruby-keyword kw">self</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">blk</span>
386
+ 38: <span class="ruby-keyword kw">self</span>
387
+ 39: <span class="ruby-keyword kw">end</span></pre>
388
+ </div>
389
+
390
+ </div>
391
+
392
+
393
+
394
+
395
+ </div>
396
+
397
+
398
+ </div>
399
+
400
+ <div id="private-instance-method-details" class="method-section section">
401
+ <h3 class="section-header">Private Instance Methods</h3>
402
+
403
+
404
+ <div id="comment-method" class="method-detail ">
405
+ <a name="M000022"></a>
406
+
407
+ <div class="method-heading">
408
+
409
+ <span class="method-name">comment</span><span
410
+ class="method-args">()</span>
411
+ <span class="method-click-advice">click to toggle source</span>
412
+
413
+ </div>
414
+
415
+ <div class="method-description">
416
+
417
+
418
+
419
+
420
+
421
+ <div class="method-source-code"
422
+ id="comment-source">
423
+ <pre>
424
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 42</span>
425
+ 42: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">comment</span>
426
+ 43: <span class="ruby-node">%{\A\s*#|\A\s*\z}</span>
427
+ 44: <span class="ruby-keyword kw">end</span></pre>
428
+ </div>
429
+
430
+ </div>
431
+
432
+
433
+
434
+
435
+ </div>
436
+
437
+
438
+ <div id="init-handlers-method" class="method-detail ">
439
+ <a name="M000025"></a>
440
+
441
+ <div class="method-heading">
442
+
443
+ <span class="method-name">init_handlers</span><span
444
+ class="method-args">()</span>
445
+ <span class="method-click-advice">click to toggle source</span>
446
+
447
+ </div>
448
+
449
+ <div class="method-description">
450
+
451
+
452
+
453
+
454
+
455
+ <div class="method-source-code"
456
+ id="init-handlers-source">
457
+ <pre>
458
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 57</span>
459
+ 57: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init_handlers</span>
460
+ 58: <span class="ruby-ivar">@handlers</span>={}
461
+ 59: <span class="ruby-keyword kw">end</span></pre>
462
+ </div>
463
+
464
+ </div>
465
+
466
+
467
+
468
+
469
+ </div>
470
+
471
+
472
+ <div id="init-source-method" class="method-detail ">
473
+ <a name="M000026"></a>
474
+
475
+ <div class="method-heading">
476
+
477
+ <span class="method-name">init_source</span><span
478
+ class="method-args">(input, name=nil)</span>
479
+ <span class="method-click-advice">click to toggle source</span>
480
+
481
+ </div>
482
+
483
+ <div class="method-description">
484
+
485
+
486
+
487
+
488
+
489
+ <div class="method-source-code"
490
+ id="init-source-source">
491
+ <pre>
492
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 61</span>
493
+ 61: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init_source</span> <span class="ruby-identifier">input</span>, <span class="ruby-identifier">name</span>=<span class="ruby-keyword kw">nil</span>
494
+ 62: <span class="ruby-identifier">source</span> =
495
+ 63: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">input</span>
496
+ 64: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">String</span>
497
+ 65: <span class="ruby-identifier">input</span>.<span class="ruby-identifier">split</span>( <span class="ruby-regexp re">%{\r?\n}</span> )
498
+ 66: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">Array</span>
499
+ 67: <span class="ruby-identifier">input</span>
500
+ 68: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">IO</span>
501
+ 69: <span class="ruby-identifier">input</span>.<span class="ruby-identifier">readlines</span>.<span class="ruby-identifier">map</span>( &amp;<span class="ruby-value">:chomp</span> )
502
+ 70: <span class="ruby-keyword kw">end</span>
503
+ 71: <span class="ruby-ivar">@name</span> = <span class="ruby-identifier">name</span>
504
+ 72: <span class="ruby-ivar">@source</span> = <span class="ruby-constant">Lab419</span><span class="ruby-operator">::</span><span class="ruby-constant">Config</span><span class="ruby-operator">::</span><span class="ruby-constant">Source</span><span class="ruby-operator">::</span><span class="ruby-identifier">new</span>( <span class="ruby-identifier">source</span>, <span class="ruby-identifier">name</span> )
505
+ 73: <span class="ruby-keyword kw">end</span></pre>
506
+ </div>
507
+
508
+ </div>
509
+
510
+
511
+
512
+
513
+ </div>
514
+
515
+
516
+ <div id="separator-rgx-method" class="method-detail ">
517
+ <a name="M000023"></a>
518
+
519
+ <div class="method-heading">
520
+
521
+ <span class="method-name">separator_rgx</span><span
522
+ class="method-args">()</span>
523
+ <span class="method-click-advice">click to toggle source</span>
524
+
525
+ </div>
526
+
527
+ <div class="method-description">
528
+
529
+
530
+
531
+
532
+
533
+ <div class="method-source-code"
534
+ id="separator-rgx-source">
535
+ <pre>
536
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 45</span>
537
+ 45: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">separator_rgx</span>
538
+ 46: <span class="ruby-ivar">@params</span>.<span class="ruby-identifier">fetch</span>( <span class="ruby-value">:separator</span>, <span class="ruby-regexp re">%{\s*=}</span> )
539
+ 47: <span class="ruby-keyword kw">end</span></pre>
540
+ </div>
541
+
542
+ </div>
543
+
544
+
545
+
546
+
547
+ </div>
548
+
549
+
550
+ <div id="syntax-error-method" class="method-detail ">
551
+ <a name="M000027"></a>
552
+
553
+ <div class="method-heading">
554
+
555
+ <span class="method-name">syntax_error</span><span
556
+ class="method-args">(msg="")</span>
557
+ <span class="method-click-advice">click to toggle source</span>
558
+
559
+ </div>
560
+
561
+ <div class="method-description">
562
+
563
+
564
+
565
+
566
+
567
+ <div class="method-source-code"
568
+ id="syntax-error-source">
569
+ <pre>
570
+ <span class="ruby-comment cmt"># File lab419/config/reader.rb, line 75</span>
571
+ 75: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">syntax_error</span> <span class="ruby-identifier">msg</span>=<span class="ruby-value str">&quot;&quot;</span>
572
+ 76: <span class="ruby-identifier">raise</span> <span class="ruby-constant">SyntaxError</span>, <span class="ruby-identifier">msg</span>
573
+ 77: <span class="ruby-keyword kw">end</span></pre>
574
+ </div>
575
+
576
+ </div>
577
+
578
+
579
+
580
+
581
+ </div>
582
+
583
+
584
+ </div>
585
+
586
+
587
+ </div>
588
+
589
+
590
+ <div id="rdoc-debugging-section-dump" class="debugging-section">
591
+
592
+ <p>Disabled; run with --debug to generate this.</p>
593
+
594
+ </div>
595
+
596
+ <div id="validator-badges">
597
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
598
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
599
+ Rdoc Generator</a> 1.1.6</small>.</p>
600
+ </div>
601
+
602
+ </body>
603
+ </html>
604
+