rack-auth-ip 0.0.2 → 0.0.3
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/ChangeLog +39 -2
- data/README +4 -4
- data/Rakefile +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-block_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-callbacks_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-change_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs-hunk_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-diff-lcs-1_1_2-lib-diff-lcs_rb.html +1 -1
- data/doc/output/coverage/-Library-Ruby-Gems-gems-rcov-0_8_1_2_0-lib-rcov_rb.html +1 -1
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-drb-drb_rb.html +1 -1
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-drb-eq_rb.html +1 -1
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-drb-invokemethod_rb.html +1 -1
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-ipaddr_rb.html +1 -1
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-pp_rb.html +1 -1
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-prettyprint_rb.html +1 -1
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-timeout_rb.html +1 -1
- data/doc/output/coverage/index.html +18 -45
- data/doc/output/coverage/lib-rack-auth-ip_rb.html +59 -47
- data/lib/rack/auth/ip.rb +14 -2
- data/spec/rack-auth-ip_spec.rb +3 -8
- metadata +2 -3
- data/doc/output/coverage/-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-forwardable_rb.html +0 -828
@@ -1,828 +0,0 @@
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
-
<html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'><head><title>/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/forwardable.rb - C0 code coverage information</title>
|
3
|
-
<style type='text/css'>body { background-color: rgb(240, 240, 245); }</style>
|
4
|
-
<style type='text/css'>span.cross-ref-title {
|
5
|
-
font-size: 140%;
|
6
|
-
}
|
7
|
-
span.cross-ref a {
|
8
|
-
text-decoration: none;
|
9
|
-
}
|
10
|
-
span.cross-ref {
|
11
|
-
background-color:#f3f7fa;
|
12
|
-
border: 1px dashed #333;
|
13
|
-
margin: 1em;
|
14
|
-
padding: 0.5em;
|
15
|
-
overflow: hidden;
|
16
|
-
}
|
17
|
-
a.crossref-toggle {
|
18
|
-
text-decoration: none;
|
19
|
-
}
|
20
|
-
span.marked0 {
|
21
|
-
background-color: rgb(185, 210, 200);
|
22
|
-
display: block;
|
23
|
-
}
|
24
|
-
span.marked1 {
|
25
|
-
background-color: rgb(190, 215, 205);
|
26
|
-
display: block;
|
27
|
-
}
|
28
|
-
span.inferred0 {
|
29
|
-
background-color: rgb(175, 200, 200);
|
30
|
-
display: block;
|
31
|
-
}
|
32
|
-
span.inferred1 {
|
33
|
-
background-color: rgb(180, 205, 205);
|
34
|
-
display: block;
|
35
|
-
}
|
36
|
-
span.uncovered0 {
|
37
|
-
background-color: rgb(225, 110, 110);
|
38
|
-
display: block;
|
39
|
-
}
|
40
|
-
span.uncovered1 {
|
41
|
-
background-color: rgb(235, 120, 120);
|
42
|
-
display: block;
|
43
|
-
}
|
44
|
-
span.overview {
|
45
|
-
border-bottom: 8px solid black;
|
46
|
-
}
|
47
|
-
div.overview {
|
48
|
-
border-bottom: 8px solid black;
|
49
|
-
}
|
50
|
-
body {
|
51
|
-
font-family: verdana, arial, helvetica;
|
52
|
-
}
|
53
|
-
div.footer {
|
54
|
-
font-size: 68%;
|
55
|
-
margin-top: 1.5em;
|
56
|
-
}
|
57
|
-
h1, h2, h3, h4, h5, h6 {
|
58
|
-
margin-bottom: 0.5em;
|
59
|
-
}
|
60
|
-
h5 {
|
61
|
-
margin-top: 0.5em;
|
62
|
-
}
|
63
|
-
.hidden {
|
64
|
-
display: none;
|
65
|
-
}
|
66
|
-
div.separator {
|
67
|
-
height: 10px;
|
68
|
-
}
|
69
|
-
/* Commented out for better readability, esp. on IE */
|
70
|
-
/*
|
71
|
-
table tr td, table tr th {
|
72
|
-
font-size: 68%;
|
73
|
-
}
|
74
|
-
td.value table tr td {
|
75
|
-
font-size: 11px;
|
76
|
-
}
|
77
|
-
*/
|
78
|
-
table.percent_graph {
|
79
|
-
height: 12px;
|
80
|
-
border: #808080 1px solid;
|
81
|
-
empty-cells: show;
|
82
|
-
}
|
83
|
-
table.percent_graph td.covered {
|
84
|
-
height: 10px;
|
85
|
-
background: #00f000;
|
86
|
-
}
|
87
|
-
table.percent_graph td.uncovered {
|
88
|
-
height: 10px;
|
89
|
-
background: #e00000;
|
90
|
-
}
|
91
|
-
table.percent_graph td.NA {
|
92
|
-
height: 10px;
|
93
|
-
background: #eaeaea;
|
94
|
-
}
|
95
|
-
table.report {
|
96
|
-
border-collapse: collapse;
|
97
|
-
width: 100%;
|
98
|
-
}
|
99
|
-
table.report td.heading {
|
100
|
-
background: #dcecff;
|
101
|
-
border: #d0d0d0 1px solid;
|
102
|
-
font-weight: bold;
|
103
|
-
text-align: center;
|
104
|
-
}
|
105
|
-
table.report td.heading:hover {
|
106
|
-
background: #c0ffc0;
|
107
|
-
}
|
108
|
-
table.report td.text {
|
109
|
-
border: #d0d0d0 1px solid;
|
110
|
-
}
|
111
|
-
table.report td.value,
|
112
|
-
table.report td.lines_total,
|
113
|
-
table.report td.lines_code {
|
114
|
-
text-align: right;
|
115
|
-
border: #d0d0d0 1px solid;
|
116
|
-
}
|
117
|
-
table.report tr.light {
|
118
|
-
background-color: rgb(240, 240, 245);
|
119
|
-
}
|
120
|
-
table.report tr.dark {
|
121
|
-
background-color: rgb(230, 230, 235);
|
122
|
-
}
|
123
|
-
</style>
|
124
|
-
<script type='text/javascript'>
|
125
|
-
// <![CDATA[
|
126
|
-
function toggleCode( id ) {
|
127
|
-
if ( document.getElementById )
|
128
|
-
elem = document.getElementById( id );
|
129
|
-
else if ( document.all )
|
130
|
-
elem = eval( "document.all." + id );
|
131
|
-
else
|
132
|
-
return false;
|
133
|
-
|
134
|
-
elemStyle = elem.style;
|
135
|
-
|
136
|
-
if ( elemStyle.display != "block" ) {
|
137
|
-
elemStyle.display = "block"
|
138
|
-
} else {
|
139
|
-
elemStyle.display = "none"
|
140
|
-
}
|
141
|
-
|
142
|
-
return true;
|
143
|
-
}
|
144
|
-
|
145
|
-
// Make cross-references hidden by default
|
146
|
-
document.writeln( "<style type=\"text/css\">span.cross-ref { display: none }</style>" )
|
147
|
-
// ]]>
|
148
|
-
</script>
|
149
|
-
<style type='text/css'>span.run0 {
|
150
|
-
background-color: rgb(178, 204, 255);
|
151
|
-
display: block;
|
152
|
-
}
|
153
|
-
span.run1 {
|
154
|
-
background-color: rgb(178, 206, 255);
|
155
|
-
display: block;
|
156
|
-
}
|
157
|
-
span.run2 {
|
158
|
-
background-color: rgb(178, 209, 255);
|
159
|
-
display: block;
|
160
|
-
}
|
161
|
-
span.run3 {
|
162
|
-
background-color: rgb(178, 211, 255);
|
163
|
-
display: block;
|
164
|
-
}
|
165
|
-
span.run4 {
|
166
|
-
background-color: rgb(178, 214, 255);
|
167
|
-
display: block;
|
168
|
-
}
|
169
|
-
span.run5 {
|
170
|
-
background-color: rgb(178, 218, 255);
|
171
|
-
display: block;
|
172
|
-
}
|
173
|
-
span.run6 {
|
174
|
-
background-color: rgb(178, 220, 255);
|
175
|
-
display: block;
|
176
|
-
}
|
177
|
-
span.run7 {
|
178
|
-
background-color: rgb(178, 223, 255);
|
179
|
-
display: block;
|
180
|
-
}
|
181
|
-
span.run8 {
|
182
|
-
background-color: rgb(178, 225, 255);
|
183
|
-
display: block;
|
184
|
-
}
|
185
|
-
span.run9 {
|
186
|
-
background-color: rgb(178, 228, 255);
|
187
|
-
display: block;
|
188
|
-
}
|
189
|
-
span.run10 {
|
190
|
-
background-color: rgb(178, 232, 255);
|
191
|
-
display: block;
|
192
|
-
}
|
193
|
-
span.run11 {
|
194
|
-
background-color: rgb(178, 234, 255);
|
195
|
-
display: block;
|
196
|
-
}
|
197
|
-
span.run12 {
|
198
|
-
background-color: rgb(178, 237, 255);
|
199
|
-
display: block;
|
200
|
-
}
|
201
|
-
span.run13 {
|
202
|
-
background-color: rgb(178, 239, 255);
|
203
|
-
display: block;
|
204
|
-
}
|
205
|
-
span.run14 {
|
206
|
-
background-color: rgb(178, 242, 255);
|
207
|
-
display: block;
|
208
|
-
}
|
209
|
-
span.run15 {
|
210
|
-
background-color: rgb(178, 246, 255);
|
211
|
-
display: block;
|
212
|
-
}
|
213
|
-
span.run16 {
|
214
|
-
background-color: rgb(178, 248, 255);
|
215
|
-
display: block;
|
216
|
-
}
|
217
|
-
span.run17 {
|
218
|
-
background-color: rgb(178, 251, 255);
|
219
|
-
display: block;
|
220
|
-
}
|
221
|
-
span.run18 {
|
222
|
-
background-color: rgb(178, 253, 255);
|
223
|
-
display: block;
|
224
|
-
}
|
225
|
-
span.run19 {
|
226
|
-
background-color: rgb(178, 255, 253);
|
227
|
-
display: block;
|
228
|
-
}
|
229
|
-
span.run20 {
|
230
|
-
background-color: rgb(178, 255, 249);
|
231
|
-
display: block;
|
232
|
-
}
|
233
|
-
span.run21 {
|
234
|
-
background-color: rgb(178, 255, 247);
|
235
|
-
display: block;
|
236
|
-
}
|
237
|
-
span.run22 {
|
238
|
-
background-color: rgb(178, 255, 244);
|
239
|
-
display: block;
|
240
|
-
}
|
241
|
-
span.run23 {
|
242
|
-
background-color: rgb(178, 255, 242);
|
243
|
-
display: block;
|
244
|
-
}
|
245
|
-
span.run24 {
|
246
|
-
background-color: rgb(178, 255, 239);
|
247
|
-
display: block;
|
248
|
-
}
|
249
|
-
span.run25 {
|
250
|
-
background-color: rgb(178, 255, 235);
|
251
|
-
display: block;
|
252
|
-
}
|
253
|
-
span.run26 {
|
254
|
-
background-color: rgb(178, 255, 233);
|
255
|
-
display: block;
|
256
|
-
}
|
257
|
-
span.run27 {
|
258
|
-
background-color: rgb(178, 255, 230);
|
259
|
-
display: block;
|
260
|
-
}
|
261
|
-
span.run28 {
|
262
|
-
background-color: rgb(178, 255, 228);
|
263
|
-
display: block;
|
264
|
-
}
|
265
|
-
span.run29 {
|
266
|
-
background-color: rgb(178, 255, 225);
|
267
|
-
display: block;
|
268
|
-
}
|
269
|
-
span.run30 {
|
270
|
-
background-color: rgb(178, 255, 221);
|
271
|
-
display: block;
|
272
|
-
}
|
273
|
-
span.run31 {
|
274
|
-
background-color: rgb(178, 255, 219);
|
275
|
-
display: block;
|
276
|
-
}
|
277
|
-
span.run32 {
|
278
|
-
background-color: rgb(178, 255, 216);
|
279
|
-
display: block;
|
280
|
-
}
|
281
|
-
span.run33 {
|
282
|
-
background-color: rgb(178, 255, 214);
|
283
|
-
display: block;
|
284
|
-
}
|
285
|
-
span.run34 {
|
286
|
-
background-color: rgb(178, 255, 211);
|
287
|
-
display: block;
|
288
|
-
}
|
289
|
-
span.run35 {
|
290
|
-
background-color: rgb(178, 255, 207);
|
291
|
-
display: block;
|
292
|
-
}
|
293
|
-
span.run36 {
|
294
|
-
background-color: rgb(178, 255, 205);
|
295
|
-
display: block;
|
296
|
-
}
|
297
|
-
span.run37 {
|
298
|
-
background-color: rgb(178, 255, 202);
|
299
|
-
display: block;
|
300
|
-
}
|
301
|
-
span.run38 {
|
302
|
-
background-color: rgb(178, 255, 200);
|
303
|
-
display: block;
|
304
|
-
}
|
305
|
-
span.run39 {
|
306
|
-
background-color: rgb(178, 255, 197);
|
307
|
-
display: block;
|
308
|
-
}
|
309
|
-
span.run40 {
|
310
|
-
background-color: rgb(178, 255, 193);
|
311
|
-
display: block;
|
312
|
-
}
|
313
|
-
span.run41 {
|
314
|
-
background-color: rgb(178, 255, 191);
|
315
|
-
display: block;
|
316
|
-
}
|
317
|
-
span.run42 {
|
318
|
-
background-color: rgb(178, 255, 188);
|
319
|
-
display: block;
|
320
|
-
}
|
321
|
-
span.run43 {
|
322
|
-
background-color: rgb(178, 255, 186);
|
323
|
-
display: block;
|
324
|
-
}
|
325
|
-
span.run44 {
|
326
|
-
background-color: rgb(178, 255, 183);
|
327
|
-
display: block;
|
328
|
-
}
|
329
|
-
span.run45 {
|
330
|
-
background-color: rgb(178, 255, 179);
|
331
|
-
display: block;
|
332
|
-
}
|
333
|
-
span.run46 {
|
334
|
-
background-color: rgb(179, 255, 178);
|
335
|
-
display: block;
|
336
|
-
}
|
337
|
-
span.run47 {
|
338
|
-
background-color: rgb(182, 255, 178);
|
339
|
-
display: block;
|
340
|
-
}
|
341
|
-
span.run48 {
|
342
|
-
background-color: rgb(184, 255, 178);
|
343
|
-
display: block;
|
344
|
-
}
|
345
|
-
span.run49 {
|
346
|
-
background-color: rgb(187, 255, 178);
|
347
|
-
display: block;
|
348
|
-
}
|
349
|
-
span.run50 {
|
350
|
-
background-color: rgb(191, 255, 178);
|
351
|
-
display: block;
|
352
|
-
}
|
353
|
-
span.run51 {
|
354
|
-
background-color: rgb(193, 255, 178);
|
355
|
-
display: block;
|
356
|
-
}
|
357
|
-
span.run52 {
|
358
|
-
background-color: rgb(196, 255, 178);
|
359
|
-
display: block;
|
360
|
-
}
|
361
|
-
span.run53 {
|
362
|
-
background-color: rgb(198, 255, 178);
|
363
|
-
display: block;
|
364
|
-
}
|
365
|
-
span.run54 {
|
366
|
-
background-color: rgb(201, 255, 178);
|
367
|
-
display: block;
|
368
|
-
}
|
369
|
-
span.run55 {
|
370
|
-
background-color: rgb(205, 255, 178);
|
371
|
-
display: block;
|
372
|
-
}
|
373
|
-
span.run56 {
|
374
|
-
background-color: rgb(207, 255, 178);
|
375
|
-
display: block;
|
376
|
-
}
|
377
|
-
span.run57 {
|
378
|
-
background-color: rgb(210, 255, 178);
|
379
|
-
display: block;
|
380
|
-
}
|
381
|
-
span.run58 {
|
382
|
-
background-color: rgb(212, 255, 178);
|
383
|
-
display: block;
|
384
|
-
}
|
385
|
-
span.run59 {
|
386
|
-
background-color: rgb(215, 255, 178);
|
387
|
-
display: block;
|
388
|
-
}
|
389
|
-
span.run60 {
|
390
|
-
background-color: rgb(219, 255, 178);
|
391
|
-
display: block;
|
392
|
-
}
|
393
|
-
span.run61 {
|
394
|
-
background-color: rgb(221, 255, 178);
|
395
|
-
display: block;
|
396
|
-
}
|
397
|
-
span.run62 {
|
398
|
-
background-color: rgb(224, 255, 178);
|
399
|
-
display: block;
|
400
|
-
}
|
401
|
-
span.run63 {
|
402
|
-
background-color: rgb(226, 255, 178);
|
403
|
-
display: block;
|
404
|
-
}
|
405
|
-
span.run64 {
|
406
|
-
background-color: rgb(229, 255, 178);
|
407
|
-
display: block;
|
408
|
-
}
|
409
|
-
span.run65 {
|
410
|
-
background-color: rgb(233, 255, 178);
|
411
|
-
display: block;
|
412
|
-
}
|
413
|
-
span.run66 {
|
414
|
-
background-color: rgb(235, 255, 178);
|
415
|
-
display: block;
|
416
|
-
}
|
417
|
-
span.run67 {
|
418
|
-
background-color: rgb(238, 255, 178);
|
419
|
-
display: block;
|
420
|
-
}
|
421
|
-
span.run68 {
|
422
|
-
background-color: rgb(240, 255, 178);
|
423
|
-
display: block;
|
424
|
-
}
|
425
|
-
span.run69 {
|
426
|
-
background-color: rgb(243, 255, 178);
|
427
|
-
display: block;
|
428
|
-
}
|
429
|
-
span.run70 {
|
430
|
-
background-color: rgb(247, 255, 178);
|
431
|
-
display: block;
|
432
|
-
}
|
433
|
-
span.run71 {
|
434
|
-
background-color: rgb(249, 255, 178);
|
435
|
-
display: block;
|
436
|
-
}
|
437
|
-
span.run72 {
|
438
|
-
background-color: rgb(252, 255, 178);
|
439
|
-
display: block;
|
440
|
-
}
|
441
|
-
span.run73 {
|
442
|
-
background-color: rgb(255, 255, 178);
|
443
|
-
display: block;
|
444
|
-
}
|
445
|
-
span.run74 {
|
446
|
-
background-color: rgb(255, 252, 178);
|
447
|
-
display: block;
|
448
|
-
}
|
449
|
-
span.run75 {
|
450
|
-
background-color: rgb(255, 248, 178);
|
451
|
-
display: block;
|
452
|
-
}
|
453
|
-
span.run76 {
|
454
|
-
background-color: rgb(255, 246, 178);
|
455
|
-
display: block;
|
456
|
-
}
|
457
|
-
span.run77 {
|
458
|
-
background-color: rgb(255, 243, 178);
|
459
|
-
display: block;
|
460
|
-
}
|
461
|
-
span.run78 {
|
462
|
-
background-color: rgb(255, 240, 178);
|
463
|
-
display: block;
|
464
|
-
}
|
465
|
-
span.run79 {
|
466
|
-
background-color: rgb(255, 238, 178);
|
467
|
-
display: block;
|
468
|
-
}
|
469
|
-
span.run80 {
|
470
|
-
background-color: rgb(255, 234, 178);
|
471
|
-
display: block;
|
472
|
-
}
|
473
|
-
span.run81 {
|
474
|
-
background-color: rgb(255, 232, 178);
|
475
|
-
display: block;
|
476
|
-
}
|
477
|
-
span.run82 {
|
478
|
-
background-color: rgb(255, 229, 178);
|
479
|
-
display: block;
|
480
|
-
}
|
481
|
-
span.run83 {
|
482
|
-
background-color: rgb(255, 226, 178);
|
483
|
-
display: block;
|
484
|
-
}
|
485
|
-
span.run84 {
|
486
|
-
background-color: rgb(255, 224, 178);
|
487
|
-
display: block;
|
488
|
-
}
|
489
|
-
span.run85 {
|
490
|
-
background-color: rgb(255, 220, 178);
|
491
|
-
display: block;
|
492
|
-
}
|
493
|
-
span.run86 {
|
494
|
-
background-color: rgb(255, 218, 178);
|
495
|
-
display: block;
|
496
|
-
}
|
497
|
-
span.run87 {
|
498
|
-
background-color: rgb(255, 215, 178);
|
499
|
-
display: block;
|
500
|
-
}
|
501
|
-
span.run88 {
|
502
|
-
background-color: rgb(255, 212, 178);
|
503
|
-
display: block;
|
504
|
-
}
|
505
|
-
span.run89 {
|
506
|
-
background-color: rgb(255, 210, 178);
|
507
|
-
display: block;
|
508
|
-
}
|
509
|
-
span.run90 {
|
510
|
-
background-color: rgb(255, 206, 178);
|
511
|
-
display: block;
|
512
|
-
}
|
513
|
-
span.run91 {
|
514
|
-
background-color: rgb(255, 204, 178);
|
515
|
-
display: block;
|
516
|
-
}
|
517
|
-
span.run92 {
|
518
|
-
background-color: rgb(255, 201, 178);
|
519
|
-
display: block;
|
520
|
-
}
|
521
|
-
span.run93 {
|
522
|
-
background-color: rgb(255, 198, 178);
|
523
|
-
display: block;
|
524
|
-
}
|
525
|
-
span.run94 {
|
526
|
-
background-color: rgb(255, 196, 178);
|
527
|
-
display: block;
|
528
|
-
}
|
529
|
-
span.run95 {
|
530
|
-
background-color: rgb(255, 192, 178);
|
531
|
-
display: block;
|
532
|
-
}
|
533
|
-
span.run96 {
|
534
|
-
background-color: rgb(255, 189, 178);
|
535
|
-
display: block;
|
536
|
-
}
|
537
|
-
span.run97 {
|
538
|
-
background-color: rgb(255, 187, 178);
|
539
|
-
display: block;
|
540
|
-
}
|
541
|
-
span.run98 {
|
542
|
-
background-color: rgb(255, 184, 178);
|
543
|
-
display: block;
|
544
|
-
}
|
545
|
-
span.run99 {
|
546
|
-
background-color: rgb(255, 182, 178);
|
547
|
-
display: block;
|
548
|
-
}
|
549
|
-
span.run100 {
|
550
|
-
background-color: rgb(255, 178, 178);
|
551
|
-
display: block;
|
552
|
-
}
|
553
|
-
</style>
|
554
|
-
</head>
|
555
|
-
<body><h3>C0 code coverage information</h3>
|
556
|
-
<p>Generated on Sat May 24 15:19:18 +0900 2008 with <a href='http://eigenclass.org/hiki/rcov'>rcov 0.8.1.2</a>
|
557
|
-
</p>
|
558
|
-
<hr/>
|
559
|
-
<pre><span class='marked0'>Code reported as executed by Ruby looks like this...
|
560
|
-
</span><span class='marked1'>and this: this line is also marked as covered.
|
561
|
-
</span><span class='inferred0'>Lines considered as run by rcov, but not reported by Ruby, look like this,
|
562
|
-
</span><span class='inferred1'>and this: these lines were inferred by rcov (using simple heuristics).
|
563
|
-
</span><span class='uncovered0'>Finally, here's a line marked as not executed.
|
564
|
-
</span></pre>
|
565
|
-
<table class='report'><thead><tr><td class='heading'>Name</td>
|
566
|
-
<td class='heading'>Total lines</td>
|
567
|
-
<td class='heading'>Lines of code</td>
|
568
|
-
<td class='heading'>Total coverage</td>
|
569
|
-
<td class='heading'>Code coverage</td>
|
570
|
-
</tr>
|
571
|
-
</thead>
|
572
|
-
<tbody><tr class='light'><td><a href='-System-Library-Frameworks-Ruby_framework-Versions-1_8-usr-lib-ruby-1_8-forwardable_rb.html'>/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/forwardable.rb</a>
|
573
|
-
</td>
|
574
|
-
<td class='lines_total'><tt>218</tt>
|
575
|
-
</td>
|
576
|
-
<td class='lines_code'><tt>50</tt>
|
577
|
-
</td>
|
578
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>82.6%</tt>
|
579
|
-
</td>
|
580
|
-
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='83'/>
|
581
|
-
<td class='uncovered' width='17'/>
|
582
|
-
</tr>
|
583
|
-
</table>
|
584
|
-
</td>
|
585
|
-
</tr>
|
586
|
-
</table>
|
587
|
-
</td>
|
588
|
-
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>32.0%</tt>
|
589
|
-
</td>
|
590
|
-
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='32'/>
|
591
|
-
<td class='uncovered' width='68'/>
|
592
|
-
</tr>
|
593
|
-
</table>
|
594
|
-
</td>
|
595
|
-
</tr>
|
596
|
-
</table>
|
597
|
-
</td>
|
598
|
-
</tr>
|
599
|
-
</tbody>
|
600
|
-
</table>
|
601
|
-
<pre><span class="inferred0"><a name="line1"></a> 1 # = forwardable - Support for the Delegation Pattern
|
602
|
-
</span><span class="inferred1"><a name="line2"></a> 2 #
|
603
|
-
</span><span class="inferred0"><a name="line3"></a> 3 # $Release Version: 1.1$
|
604
|
-
</span><span class="inferred1"><a name="line4"></a> 4 # $Revision: 11708 $
|
605
|
-
</span><span class="inferred0"><a name="line5"></a> 5 # $Date: 2007-02-13 08:01:19 +0900 (Tue, 13 Feb 2007) $
|
606
|
-
</span><span class="inferred1"><a name="line6"></a> 6 # by Keiju ISHITSUKA(keiju@ishitsuka.com)
|
607
|
-
</span><span class="inferred0"><a name="line7"></a> 7 #
|
608
|
-
</span><span class="inferred1"><a name="line8"></a> 8 # Documentation by James Edward Gray II and Gavin Sinclair
|
609
|
-
</span><span class="inferred0"><a name="line9"></a> 9 #
|
610
|
-
</span><span class="inferred1"><a name="line10"></a> 10 # == Introduction
|
611
|
-
</span><span class="inferred0"><a name="line11"></a> 11 #
|
612
|
-
</span><span class="inferred1"><a name="line12"></a> 12 # This library allows you delegate method calls to an object, on a method by
|
613
|
-
</span><span class="inferred0"><a name="line13"></a> 13 # method basis. You can use Forwardable to setup this delegation at the class
|
614
|
-
</span><span class="inferred1"><a name="line14"></a> 14 # level, or SingleForwardable to handle it at the object level.
|
615
|
-
</span><span class="inferred0"><a name="line15"></a> 15 #
|
616
|
-
</span><span class="inferred1"><a name="line16"></a> 16 # == Notes
|
617
|
-
</span><span class="inferred0"><a name="line17"></a> 17 #
|
618
|
-
</span><span class="inferred1"><a name="line18"></a> 18 # Be advised, RDoc will not detect delegated methods.
|
619
|
-
</span><span class="inferred0"><a name="line19"></a> 19 #
|
620
|
-
</span><span class="inferred1"><a name="line20"></a> 20 # <b>forwardable.rb provides single-method delegation via the
|
621
|
-
</span><span class="inferred0"><a name="line21"></a> 21 # def_delegator() and def_delegators() methods. For full-class
|
622
|
-
</span><span class="inferred1"><a name="line22"></a> 22 # delegation via DelegateClass(), see delegate.rb.</b>
|
623
|
-
</span><span class="inferred0"><a name="line23"></a> 23 #
|
624
|
-
</span><span class="inferred1"><a name="line24"></a> 24 # == Examples
|
625
|
-
</span><span class="inferred0"><a name="line25"></a> 25 #
|
626
|
-
</span><span class="inferred1"><a name="line26"></a> 26 # === Forwardable
|
627
|
-
</span><span class="inferred0"><a name="line27"></a> 27 #
|
628
|
-
</span><span class="inferred1"><a name="line28"></a> 28 # Forwardable makes building a new class based on existing work, with a proper
|
629
|
-
</span><span class="inferred0"><a name="line29"></a> 29 # interface, almost trivial. We want to rely on what has come before obviously,
|
630
|
-
</span><span class="inferred1"><a name="line30"></a> 30 # but with delegation we can take just the methods we need and even rename them
|
631
|
-
</span><span class="inferred0"><a name="line31"></a> 31 # as appropriate. In many cases this is preferable to inheritance, which gives
|
632
|
-
</span><span class="inferred1"><a name="line32"></a> 32 # us the entire old interface, even if much of it isn't needed.
|
633
|
-
</span><span class="inferred0"><a name="line33"></a> 33 #
|
634
|
-
</span><span class="inferred1"><a name="line34"></a> 34 # class Queue
|
635
|
-
</span><span class="inferred0"><a name="line35"></a> 35 # extend Forwardable
|
636
|
-
</span><span class="inferred1"><a name="line36"></a> 36 #
|
637
|
-
</span><span class="inferred0"><a name="line37"></a> 37 # def initialize
|
638
|
-
</span><span class="inferred1"><a name="line38"></a> 38 # @q = [ ] # prepare delegate object
|
639
|
-
</span><span class="inferred0"><a name="line39"></a> 39 # end
|
640
|
-
</span><span class="inferred1"><a name="line40"></a> 40 #
|
641
|
-
</span><span class="inferred0"><a name="line41"></a> 41 # # setup prefered interface, enq() and deq()...
|
642
|
-
</span><span class="inferred1"><a name="line42"></a> 42 # def_delegator :@q, :push, :enq
|
643
|
-
</span><span class="inferred0"><a name="line43"></a> 43 # def_delegator :@q, :shift, :deq
|
644
|
-
</span><span class="inferred1"><a name="line44"></a> 44 #
|
645
|
-
</span><span class="inferred0"><a name="line45"></a> 45 # # support some general Array methods that fit Queues well
|
646
|
-
</span><span class="inferred1"><a name="line46"></a> 46 # def_delegators :@q, :clear, :first, :push, :shift, :size
|
647
|
-
</span><span class="inferred0"><a name="line47"></a> 47 # end
|
648
|
-
</span><span class="inferred1"><a name="line48"></a> 48 #
|
649
|
-
</span><span class="inferred0"><a name="line49"></a> 49 # q = Queue.new
|
650
|
-
</span><span class="inferred1"><a name="line50"></a> 50 # q.enq 1, 2, 3, 4, 5
|
651
|
-
</span><span class="inferred0"><a name="line51"></a> 51 # q.push 6
|
652
|
-
</span><span class="inferred1"><a name="line52"></a> 52 #
|
653
|
-
</span><span class="inferred0"><a name="line53"></a> 53 # q.shift # => 1
|
654
|
-
</span><span class="inferred1"><a name="line54"></a> 54 # while q.size > 0
|
655
|
-
</span><span class="inferred0"><a name="line55"></a> 55 # puts q.deq
|
656
|
-
</span><span class="inferred1"><a name="line56"></a> 56 # end
|
657
|
-
</span><span class="inferred0"><a name="line57"></a> 57 #
|
658
|
-
</span><span class="inferred1"><a name="line58"></a> 58 # q.enq "Ruby", "Perl", "Python"
|
659
|
-
</span><span class="inferred0"><a name="line59"></a> 59 # puts q.first
|
660
|
-
</span><span class="inferred1"><a name="line60"></a> 60 # q.clear
|
661
|
-
</span><span class="inferred0"><a name="line61"></a> 61 # puts q.first
|
662
|
-
</span><span class="inferred1"><a name="line62"></a> 62 #
|
663
|
-
</span><span class="inferred0"><a name="line63"></a> 63 # <i>Prints:</i>
|
664
|
-
</span><span class="inferred1"><a name="line64"></a> 64 #
|
665
|
-
</span><span class="inferred0"><a name="line65"></a> 65 # 2
|
666
|
-
</span><span class="inferred1"><a name="line66"></a> 66 # 3
|
667
|
-
</span><span class="inferred0"><a name="line67"></a> 67 # 4
|
668
|
-
</span><span class="inferred1"><a name="line68"></a> 68 # 5
|
669
|
-
</span><span class="inferred0"><a name="line69"></a> 69 # 6
|
670
|
-
</span><span class="inferred1"><a name="line70"></a> 70 # Ruby
|
671
|
-
</span><span class="inferred0"><a name="line71"></a> 71 # nil
|
672
|
-
</span><span class="inferred1"><a name="line72"></a> 72 #
|
673
|
-
</span><span class="inferred0"><a name="line73"></a> 73 # === SingleForwardable
|
674
|
-
</span><span class="inferred1"><a name="line74"></a> 74 #
|
675
|
-
</span><span class="inferred0"><a name="line75"></a> 75 # printer = String.new
|
676
|
-
</span><span class="inferred1"><a name="line76"></a> 76 # printer.extend SingleForwardable # prepare object for delegation
|
677
|
-
</span><span class="inferred0"><a name="line77"></a> 77 # printer.def_delegator "STDOUT", "puts" # add delegation for STDOUT.puts()
|
678
|
-
</span><span class="inferred1"><a name="line78"></a> 78 # printer.puts "Howdy!"
|
679
|
-
</span><span class="inferred0"><a name="line79"></a> 79 #
|
680
|
-
</span><span class="inferred1"><a name="line80"></a> 80 # <i>Prints:</i>
|
681
|
-
</span><span class="inferred0"><a name="line81"></a> 81 #
|
682
|
-
</span><span class="inferred1"><a name="line82"></a> 82 # Howdy!
|
683
|
-
</span><span class="inferred0"><a name="line83"></a> 83
|
684
|
-
</span><span class="inferred1"><a name="line84"></a> 84 #
|
685
|
-
</span><span class="inferred0"><a name="line85"></a> 85 # The Forwardable module provides delegation of specified
|
686
|
-
</span><span class="inferred1"><a name="line86"></a> 86 # methods to a designated object, using the methods #def_delegator
|
687
|
-
</span><span class="inferred0"><a name="line87"></a> 87 # and #def_delegators.
|
688
|
-
</span><span class="inferred1"><a name="line88"></a> 88 #
|
689
|
-
</span><span class="inferred0"><a name="line89"></a> 89 # For example, say you have a class RecordCollection which
|
690
|
-
</span><span class="inferred1"><a name="line90"></a> 90 # contains an array <tt>@records</tt>. You could provide the lookup method
|
691
|
-
</span><span class="inferred0"><a name="line91"></a> 91 # #record_number(), which simply calls #[] on the <tt>@records</tt>
|
692
|
-
</span><span class="inferred1"><a name="line92"></a> 92 # array, like this:
|
693
|
-
</span><span class="inferred0"><a name="line93"></a> 93 #
|
694
|
-
</span><span class="inferred1"><a name="line94"></a> 94 # class RecordCollection
|
695
|
-
</span><span class="inferred0"><a name="line95"></a> 95 # extend Forwardable
|
696
|
-
</span><span class="inferred1"><a name="line96"></a> 96 # def_delegator :@records, :[], :record_number
|
697
|
-
</span><span class="inferred0"><a name="line97"></a> 97 # end
|
698
|
-
</span><span class="inferred1"><a name="line98"></a> 98 #
|
699
|
-
</span><span class="inferred0"><a name="line99"></a> 99 # Further, if you wish to provide the methods #size, #<<, and #map,
|
700
|
-
</span><span class="inferred1"><a name="line100"></a>100 # all of which delegate to @records, this is how you can do it:
|
701
|
-
</span><span class="inferred0"><a name="line101"></a>101 #
|
702
|
-
</span><span class="inferred1"><a name="line102"></a>102 # class RecordCollection
|
703
|
-
</span><span class="inferred0"><a name="line103"></a>103 # # extend Forwardable, but we did that above
|
704
|
-
</span><span class="inferred1"><a name="line104"></a>104 # def_delegators :@records, :size, :<<, :map
|
705
|
-
</span><span class="inferred0"><a name="line105"></a>105 # end
|
706
|
-
</span><span class="inferred1"><a name="line106"></a>106 #
|
707
|
-
</span><span class="inferred0"><a name="line107"></a>107 # Also see the example at forwardable.rb.
|
708
|
-
</span><span class="inferred1"><a name="line108"></a>108 #
|
709
|
-
</span><span class="marked0"><a name="line109"></a>109 module Forwardable
|
710
|
-
</span><span class="inferred1"><a name="line110"></a>110
|
711
|
-
</span><span class="marked0"><a name="line111"></a>111 @debug = nil
|
712
|
-
</span><span class="marked1"><a name="line112"></a>112 class<<self
|
713
|
-
</span><span class="inferred0"><a name="line113"></a>113 # force Forwardable to show up in stack backtraces of delegated methods
|
714
|
-
</span><span class="marked1"><a name="line114"></a>114 attr_accessor :debug
|
715
|
-
</span><span class="inferred0"><a name="line115"></a>115 end
|
716
|
-
</span><span class="inferred1"><a name="line116"></a>116
|
717
|
-
</span><span class="inferred0"><a name="line117"></a>117 #
|
718
|
-
</span><span class="inferred1"><a name="line118"></a>118 # Shortcut for defining multiple delegator methods, but with no
|
719
|
-
</span><span class="inferred0"><a name="line119"></a>119 # provision for using a different name. The following two code
|
720
|
-
</span><span class="inferred1"><a name="line120"></a>120 # samples have the same effect:
|
721
|
-
</span><span class="inferred0"><a name="line121"></a>121 #
|
722
|
-
</span><span class="inferred1"><a name="line122"></a>122 # def_delegators :@records, :size, :<<, :map
|
723
|
-
</span><span class="inferred0"><a name="line123"></a>123 #
|
724
|
-
</span><span class="inferred1"><a name="line124"></a>124 # def_delegator :@records, :size
|
725
|
-
</span><span class="inferred0"><a name="line125"></a>125 # def_delegator :@records, :<<
|
726
|
-
</span><span class="inferred1"><a name="line126"></a>126 # def_delegator :@records, :map
|
727
|
-
</span><span class="inferred0"><a name="line127"></a>127 #
|
728
|
-
</span><span class="inferred1"><a name="line128"></a>128 # See the examples at Forwardable and forwardable.rb.
|
729
|
-
</span><span class="inferred0"><a name="line129"></a>129 #
|
730
|
-
</span><span class="marked1"><a name="line130"></a>130 def def_instance_delegators(accessor, *methods)
|
731
|
-
</span><span class="uncovered0"><a name="line131"></a>131 for method in methods
|
732
|
-
</span><span class="uncovered1"><a name="line132"></a>132 def_instance_delegator(accessor, method)
|
733
|
-
</span><span class="uncovered0"><a name="line133"></a>133 end
|
734
|
-
</span><span class="uncovered1"><a name="line134"></a>134 end
|
735
|
-
</span><span class="inferred0"><a name="line135"></a>135
|
736
|
-
</span><span class="inferred1"><a name="line136"></a>136 #
|
737
|
-
</span><span class="inferred0"><a name="line137"></a>137 # Defines a method _method_ which delegates to _obj_ (i.e. it calls
|
738
|
-
</span><span class="inferred1"><a name="line138"></a>138 # the method of the same name in _obj_). If _new_name_ is
|
739
|
-
</span><span class="inferred0"><a name="line139"></a>139 # provided, it is used as the name for the delegate method.
|
740
|
-
</span><span class="inferred1"><a name="line140"></a>140 #
|
741
|
-
</span><span class="inferred0"><a name="line141"></a>141 # See the examples at Forwardable and forwardable.rb.
|
742
|
-
</span><span class="inferred1"><a name="line142"></a>142 #
|
743
|
-
</span><span class="marked0"><a name="line143"></a>143 def def_instance_delegator(accessor, method, ali = method)
|
744
|
-
</span><span class="uncovered1"><a name="line144"></a>144 accessor = accessor.id2name if accessor.kind_of?(Integer)
|
745
|
-
</span><span class="uncovered0"><a name="line145"></a>145 method = method.id2name if method.kind_of?(Integer)
|
746
|
-
</span><span class="uncovered1"><a name="line146"></a>146 ali = ali.id2name if ali.kind_of?(Integer)
|
747
|
-
</span><span class="uncovered0"><a name="line147"></a>147
|
748
|
-
</span><span class="uncovered1"><a name="line148"></a>148 module_eval(<<-EOS, "(__FORWARDABLE__)", 1)
|
749
|
-
</span><span class="uncovered0"><a name="line149"></a>149 def #{ali}(*args, &block)
|
750
|
-
</span><span class="uncovered1"><a name="line150"></a>150 begin
|
751
|
-
</span><span class="uncovered0"><a name="line151"></a>151 #{accessor}.__send__(:#{method}, *args, &block)
|
752
|
-
</span><span class="uncovered1"><a name="line152"></a>152 rescue Exception
|
753
|
-
</span><span class="uncovered0"><a name="line153"></a>153 $@.delete_if{|s| /^\\(__FORWARDABLE__\\):/ =~ s} unless Forwardable::debug
|
754
|
-
</span><span class="uncovered1"><a name="line154"></a>154 Kernel::raise
|
755
|
-
</span><span class="uncovered0"><a name="line155"></a>155 end
|
756
|
-
</span><span class="uncovered1"><a name="line156"></a>156 end
|
757
|
-
</span><span class="uncovered0"><a name="line157"></a>157 EOS
|
758
|
-
</span><span class="uncovered1"><a name="line158"></a>158 end
|
759
|
-
</span><span class="inferred0"><a name="line159"></a>159
|
760
|
-
</span><span class="marked1"><a name="line160"></a>160 alias def_delegators def_instance_delegators
|
761
|
-
</span><span class="marked0"><a name="line161"></a>161 alias def_delegator def_instance_delegator
|
762
|
-
</span><span class="inferred1"><a name="line162"></a>162 end
|
763
|
-
</span><span class="inferred0"><a name="line163"></a>163
|
764
|
-
</span><span class="inferred1"><a name="line164"></a>164 #
|
765
|
-
</span><span class="inferred0"><a name="line165"></a>165 # The SingleForwardable module provides delegation of specified
|
766
|
-
</span><span class="inferred1"><a name="line166"></a>166 # methods to a designated object, using the methods #def_delegator
|
767
|
-
</span><span class="inferred0"><a name="line167"></a>167 # and #def_delegators. This module is similar to Forwardable, but it works on
|
768
|
-
</span><span class="inferred1"><a name="line168"></a>168 # objects themselves, instead of their defining classes.
|
769
|
-
</span><span class="inferred0"><a name="line169"></a>169 #
|
770
|
-
</span><span class="inferred1"><a name="line170"></a>170 # Also see the example at forwardable.rb.
|
771
|
-
</span><span class="inferred0"><a name="line171"></a>171 #
|
772
|
-
</span><span class="marked1"><a name="line172"></a>172 module SingleForwardable
|
773
|
-
</span><span class="inferred0"><a name="line173"></a>173 #
|
774
|
-
</span><span class="inferred1"><a name="line174"></a>174 # Shortcut for defining multiple delegator methods, but with no
|
775
|
-
</span><span class="inferred0"><a name="line175"></a>175 # provision for using a different name. The following two code
|
776
|
-
</span><span class="inferred1"><a name="line176"></a>176 # samples have the same effect:
|
777
|
-
</span><span class="inferred0"><a name="line177"></a>177 #
|
778
|
-
</span><span class="inferred1"><a name="line178"></a>178 # single_forwardable.def_delegators :@records, :size, :<<, :map
|
779
|
-
</span><span class="inferred0"><a name="line179"></a>179 #
|
780
|
-
</span><span class="inferred1"><a name="line180"></a>180 # single_forwardable.def_delegator :@records, :size
|
781
|
-
</span><span class="inferred0"><a name="line181"></a>181 # single_forwardable.def_delegator :@records, :<<
|
782
|
-
</span><span class="inferred1"><a name="line182"></a>182 # single_forwardable.def_delegator :@records, :map
|
783
|
-
</span><span class="inferred0"><a name="line183"></a>183 #
|
784
|
-
</span><span class="inferred1"><a name="line184"></a>184 # See the example at forwardable.rb.
|
785
|
-
</span><span class="inferred0"><a name="line185"></a>185 #
|
786
|
-
</span><span class="marked1"><a name="line186"></a>186 def def_singleton_delegators(accessor, *methods)
|
787
|
-
</span><span class="uncovered0"><a name="line187"></a>187 for method in methods
|
788
|
-
</span><span class="uncovered1"><a name="line188"></a>188 def_singleton_delegator(accessor, method)
|
789
|
-
</span><span class="uncovered0"><a name="line189"></a>189 end
|
790
|
-
</span><span class="uncovered1"><a name="line190"></a>190 end
|
791
|
-
</span><span class="inferred0"><a name="line191"></a>191
|
792
|
-
</span><span class="inferred1"><a name="line192"></a>192 #
|
793
|
-
</span><span class="inferred0"><a name="line193"></a>193 # Defines a method _method_ which delegates to _obj_ (i.e. it calls
|
794
|
-
</span><span class="inferred1"><a name="line194"></a>194 # the method of the same name in _obj_). If _new_name_ is
|
795
|
-
</span><span class="inferred0"><a name="line195"></a>195 # provided, it is used as the name for the delegate method.
|
796
|
-
</span><span class="inferred1"><a name="line196"></a>196 #
|
797
|
-
</span><span class="inferred0"><a name="line197"></a>197 # See the example at forwardable.rb.
|
798
|
-
</span><span class="inferred1"><a name="line198"></a>198 #
|
799
|
-
</span><span class="marked0"><a name="line199"></a>199 def def_singleton_delegator(accessor, method, ali = method)
|
800
|
-
</span><span class="uncovered1"><a name="line200"></a>200 accessor = accessor.id2name if accessor.kind_of?(Integer)
|
801
|
-
</span><span class="uncovered0"><a name="line201"></a>201 method = method.id2name if method.kind_of?(Integer)
|
802
|
-
</span><span class="uncovered1"><a name="line202"></a>202 ali = ali.id2name if ali.kind_of?(Integer)
|
803
|
-
</span><span class="uncovered0"><a name="line203"></a>203
|
804
|
-
</span><span class="uncovered1"><a name="line204"></a>204 instance_eval(<<-EOS, "(__FORWARDABLE__)", 1)
|
805
|
-
</span><span class="uncovered0"><a name="line205"></a>205 def #{ali}(*args, &block)
|
806
|
-
</span><span class="uncovered1"><a name="line206"></a>206 begin
|
807
|
-
</span><span class="uncovered0"><a name="line207"></a>207 #{accessor}.__send__(:#{method}, *args,&block)
|
808
|
-
</span><span class="uncovered1"><a name="line208"></a>208 rescue Exception
|
809
|
-
</span><span class="uncovered0"><a name="line209"></a>209 $@.delete_if{|s| /^\\(__FORWARDABLE__\\):/ =~ s} unless Forwardable::debug
|
810
|
-
</span><span class="uncovered1"><a name="line210"></a>210 Kernel::raise
|
811
|
-
</span><span class="uncovered0"><a name="line211"></a>211 end
|
812
|
-
</span><span class="uncovered1"><a name="line212"></a>212 end
|
813
|
-
</span><span class="uncovered0"><a name="line213"></a>213 EOS
|
814
|
-
</span><span class="uncovered1"><a name="line214"></a>214 end
|
815
|
-
</span><span class="inferred0"><a name="line215"></a>215
|
816
|
-
</span><span class="marked1"><a name="line216"></a>216 alias def_delegators def_singleton_delegators
|
817
|
-
</span><span class="marked0"><a name="line217"></a>217 alias def_delegator def_singleton_delegator
|
818
|
-
</span><span class="inferred1"><a name="line218"></a>218 end
|
819
|
-
</span></pre><hr/>
|
820
|
-
<p>Generated using the <a href='http://eigenclass.org/hiki.rb?rcov'>rcov code coverage analysis tool for Ruby</a>
|
821
|
-
version 0.8.1.2.</p>
|
822
|
-
<p><a href='http://validator.w3.org/check/referer'><img src='http://www.w3.org/Icons/valid-xhtml10' height='31' alt='Valid XHTML 1.0!' width='88'/>
|
823
|
-
</a>
|
824
|
-
<a href='http://jigsaw.w3.org/css-validator/check/referer'><img src='http://jigsaw.w3.org/css-validator/images/vcss' alt='Valid CSS!' style='border:0;width:88px;height:31px'/>
|
825
|
-
</a>
|
826
|
-
</p>
|
827
|
-
</body>
|
828
|
-
</html>
|