autoc 1.2 → 1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES +4 -0
  3. data/README +3 -1
  4. data/doc/AutoC.html +23 -7
  5. data/doc/AutoC/Code.html +3 -3
  6. data/doc/AutoC/Collection.html +289 -76
  7. data/doc/AutoC/HashMap.html +44 -46
  8. data/doc/AutoC/HashSet.html +20 -17
  9. data/doc/AutoC/List.html +56 -92
  10. data/doc/AutoC/Module.html +2 -2
  11. data/doc/AutoC/Module/File.html +2 -2
  12. data/doc/AutoC/Module/Header.html +6 -4
  13. data/doc/AutoC/Module/Source.html +26 -26
  14. data/doc/AutoC/Priority.html +2 -2
  15. data/doc/AutoC/Queue.html +30 -92
  16. data/doc/AutoC/Reference.html +217 -61
  17. data/doc/AutoC/String.html +1393 -0
  18. data/doc/AutoC/Type.html +240 -128
  19. data/doc/AutoC/UserDefinedType.html +688 -47
  20. data/doc/AutoC/Vector.html +154 -62
  21. data/doc/_index.html +9 -2
  22. data/doc/class_list.html +1 -1
  23. data/doc/file.CHANGES.html +10 -2
  24. data/doc/file.README.html +5 -3
  25. data/doc/index.html +5 -3
  26. data/doc/method_list.html +235 -97
  27. data/doc/top-level-namespace.html +2 -2
  28. data/lib/autoc.rb +3 -1
  29. data/lib/autoc/code.rb +3 -2
  30. data/lib/autoc/collection.rb +36 -40
  31. data/lib/autoc/collection/hash_map.rb +10 -14
  32. data/lib/autoc/collection/hash_set.rb +12 -11
  33. data/lib/autoc/collection/list.rb +21 -11
  34. data/lib/autoc/collection/queue.rb +5 -8
  35. data/lib/autoc/collection/vector.rb +28 -12
  36. data/lib/autoc/string.rb +492 -0
  37. data/lib/autoc/type.rb +155 -66
  38. data/test/test.rb +157 -35
  39. data/test/test_char_string.rb +270 -0
  40. data/test/test_int_list.rb +35 -0
  41. data/test/test_int_vector.rb +34 -0
  42. data/test/test_value_hash_map.rb +162 -0
  43. data/test/test_value_hash_set.rb +173 -0
  44. data/test/test_value_list.rb +193 -0
  45. data/test/test_value_queue.rb +275 -0
  46. data/test/test_value_vector.rb +155 -0
  47. data/test/value.rb +80 -0
  48. metadata +15 -8
  49. data/test/test.c +0 -1041
  50. data/test/test.h +0 -41
  51. data/test/test_auto.c +0 -3407
  52. data/test/test_auto.h +0 -765
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 11ae44f4721df067b0dbb59a288d3d72cef3d57d
4
- data.tar.gz: 89de40d76ed3cf3beaf5ee4ac3392eb3df6b9133
3
+ metadata.gz: 833384d60d6e76119c4a60af7422cb309ab1de85
4
+ data.tar.gz: 48a857681b27ed6f43cd699d68aa2dc5dec9745e
5
5
  SHA512:
6
- metadata.gz: 7f7bf12543d317658b89bed344a08f6d0ddc47c61a5585a7690c75a0d9d0acfcf09e69d07f892edc80c0f8afa1447030e46d03cd76f45f2d7f6fdcd03d8128a3
7
- data.tar.gz: 7558ad5590ce8872d57603be29d07d4e080644a89eed4bc1df35a4a06a5c7cd7ca195c8bce8661aae4f80547b04730abce1efdeb3ad7bec5320a4fbfdd1967ea
6
+ metadata.gz: 202f01b392c46f2246417502ec713d56e93d296d3d3034e0a1a381a0e1af6573cd09b0cead67814fd0aad7701f58ccfd6342b7dec02b0f05ea3232829b72bc37
7
+ data.tar.gz: 4450861b0a93da64d9058ccf186af04520892680c771ade10f3131f23813cf2a4db052c32fb467b90140e24d33493e86b44079c0dcc7d018f4447c526ec13f73
data/CHANGES CHANGED
@@ -1,3 +1,7 @@
1
+ == 1.3
2
+
3
+ Introduced AutoC::String string type.
4
+
1
5
  == 1.2
2
6
 
3
7
  Introduced counted reference type AutoC::Reference.
data/README CHANGED
@@ -16,7 +16,9 @@ For more information refer to {::AutoC}.
16
16
  Ad-hoc test build instructions:
17
17
  ----
18
18
  > cd test
19
- > cc -o test test.c test_auto.c
19
+ > ruby -I. -I../lib test.rb
20
+ > cc test_auto.c
21
+ > ./a.out
20
22
  ----
21
23
 
22
24
  For (in)complete list of changes refer to {file:CHANGES}.
@@ -80,7 +80,7 @@
80
80
 
81
81
  <dt class="r1 last">Defined in:</dt>
82
82
  <dd class="r1 last">lib/autoc.rb<span class="defines">,<br />
83
- lib/autoc/type.rb,<br /> lib/autoc/code.rb,<br /> lib/autoc/collection.rb,<br /> lib/autoc/collection/list.rb,<br /> lib/autoc/collection/queue.rb,<br /> lib/autoc/collection/vector.rb,<br /> lib/autoc/collection/hash_set.rb,<br /> lib/autoc/collection/hash_map.rb</span>
83
+ lib/autoc/type.rb,<br /> lib/autoc/code.rb,<br /> lib/autoc/string.rb,<br /> lib/autoc/collection.rb,<br /> lib/autoc/collection/list.rb,<br /> lib/autoc/collection/queue.rb,<br /> lib/autoc/collection/vector.rb,<br /> lib/autoc/collection/hash_map.rb,<br /> lib/autoc/collection/hash_set.rb</span>
84
84
  </dd>
85
85
 
86
86
  </dl>
@@ -100,6 +100,9 @@
100
100
  <p><span class='object_link'><a href="AutoC/Collection.html" title="AutoC::Collection (class)">Collection</a></span> strongly-typed data structure generators similar
101
101
  to the C++ STL container classes.</p>
102
102
  </li>
103
+ <li>
104
+ <p><span class='object_link'><a href="AutoC/String.html" title="AutoC::String (class)">String</a></span> wrapper around the standard C string with string building capability.</p>
105
+ </li>
103
106
  </ol>
104
107
  </div>
105
108
  <div class="sect1">
@@ -135,7 +138,7 @@ Should the major incompatible changes be made, the new release 2.0 will be intro
135
138
 
136
139
 
137
140
 
138
- <strong class="classes">Classes:</strong> <span class='object_link'><a href="AutoC/Code.html" title="AutoC::Code (class)">Code</a></span>, <span class='object_link'><a href="AutoC/Collection.html" title="AutoC::Collection (class)">Collection</a></span>, <span class='object_link'><a href="AutoC/HashMap.html" title="AutoC::HashMap (class)">HashMap</a></span>, <span class='object_link'><a href="AutoC/HashSet.html" title="AutoC::HashSet (class)">HashSet</a></span>, <span class='object_link'><a href="AutoC/List.html" title="AutoC::List (class)">List</a></span>, <span class='object_link'><a href="AutoC/Module.html" title="AutoC::Module (class)">Module</a></span>, <span class='object_link'><a href="AutoC/Queue.html" title="AutoC::Queue (class)">Queue</a></span>, <span class='object_link'><a href="AutoC/Reference.html" title="AutoC::Reference (class)">Reference</a></span>, <span class='object_link'><a href="AutoC/Type.html" title="AutoC::Type (class)">Type</a></span>, <span class='object_link'><a href="AutoC/UserDefinedType.html" title="AutoC::UserDefinedType (class)">UserDefinedType</a></span>, <span class='object_link'><a href="AutoC/Vector.html" title="AutoC::Vector (class)">Vector</a></span>
141
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="AutoC/Code.html" title="AutoC::Code (class)">Code</a></span>, <span class='object_link'><a href="AutoC/Collection.html" title="AutoC::Collection (class)">Collection</a></span>, <span class='object_link'><a href="AutoC/HashMap.html" title="AutoC::HashMap (class)">HashMap</a></span>, <span class='object_link'><a href="AutoC/HashSet.html" title="AutoC::HashSet (class)">HashSet</a></span>, <span class='object_link'><a href="AutoC/List.html" title="AutoC::List (class)">List</a></span>, <span class='object_link'><a href="AutoC/Module.html" title="AutoC::Module (class)">Module</a></span>, <span class='object_link'><a href="AutoC/Queue.html" title="AutoC::Queue (class)">Queue</a></span>, <span class='object_link'><a href="AutoC/Reference.html" title="AutoC::Reference (class)">Reference</a></span>, <span class='object_link'><a href="AutoC/String.html" title="AutoC::String (class)">String</a></span>, <span class='object_link'><a href="AutoC/Type.html" title="AutoC::Type (class)">Type</a></span>, <span class='object_link'><a href="AutoC/UserDefinedType.html" title="AutoC::UserDefinedType (class)">UserDefinedType</a></span>, <span class='object_link'><a href="AutoC/Vector.html" title="AutoC::Vector (class)">Vector</a></span>
139
142
 
140
143
 
141
144
  </p>
@@ -147,7 +150,7 @@ Should the major incompatible changes be made, the new release 2.0 will be intro
147
150
  <dt id="VERSION-constant" class="">VERSION =
148
151
 
149
152
  </dt>
150
- <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>1.2</span><span class='tstring_end'>&quot;</span></span></pre></dd>
153
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>1.3</span><span class='tstring_end'>&quot;</span></span></pre></dd>
151
154
 
152
155
  </dl>
153
156
 
@@ -241,6 +244,19 @@ Throw NameError is resulting string is not a valid C identifier.</p>
241
244
  </div>
242
245
  <div class="tags">
243
246
 
247
+ <p class="tag_title">Raises:</p>
248
+ <ul class="raise">
249
+
250
+ <li>
251
+
252
+
253
+ <span class='type'>(<tt>NameError</tt>)</span>
254
+
255
+
256
+
257
+ </li>
258
+
259
+ </ul>
244
260
 
245
261
  </div><table class="source_code">
246
262
  <tr>
@@ -259,8 +275,8 @@ Throw NameError is resulting string is not a valid C identifier.</p>
259
275
 
260
276
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_c_id'>c_id</span><span class='lparen'>(</span><span class='id identifier rubyid_obj'>obj</span><span class='rparen'>)</span>
261
277
  <span class='id identifier rubyid_obj'>obj</span> <span class='op'>=</span> <span class='id identifier rubyid_obj'>obj</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
262
- <span class='comment'>#raise NameError.new(&quot;#{obj} is not a valid C identifier&quot;, obj) if (/^[_a-zA-Z]\w*$/ =~ obj).nil?
263
- </span> <span class='id identifier rubyid_obj'>obj</span>
278
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>NameError</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&#39;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_obj'>obj</span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39; is not a valid C identifier</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_obj'>obj</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^[_a-zA-Z]\w*$</span><span class='regexp_end'>/</span></span> <span class='op'>=~</span> <span class='id identifier rubyid_obj'>obj</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
279
+ <span class='id identifier rubyid_obj'>obj</span>
264
280
  <span class='kw'>end</span></pre>
265
281
  </td>
266
282
  </tr>
@@ -306,9 +322,9 @@ Throw NameError is resulting string is not a valid C identifier.</p>
306
322
  </div>
307
323
 
308
324
  <div id="footer">
309
- Generated on Sat Nov 22 16:58:03 2014 by
325
+ Generated on Thu Mar 17 13:32:50 2016 by
310
326
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
311
- 0.8.7.6 (ruby-2.1.5).
327
+ 0.8.7.6 (ruby-2.2.4).
312
328
  </div>
313
329
 
314
330
  </body>
@@ -418,7 +418,7 @@
418
418
  <pre class="code"><span class="info file"># File 'lib/autoc/code.rb', line 52</span>
419
419
 
420
420
  <span class='kw'>def</span> <span class='id identifier rubyid_source_size'>source_size</span>
421
- <span class='id identifier rubyid_s'>s</span> <span class='op'>=</span> <span class='const'>String</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
421
+ <span class='id identifier rubyid_s'>s</span> <span class='op'>=</span> <span class='op'>::</span><span class='const'>String</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
422
422
  <span class='id identifier rubyid_write_decls'>write_decls</span><span class='lparen'>(</span><span class='id identifier rubyid_s'>s</span><span class='rparen'>)</span>
423
423
  <span class='id identifier rubyid_write_defs'>write_defs</span><span class='lparen'>(</span><span class='id identifier rubyid_s'>s</span><span class='rparen'>)</span>
424
424
  <span class='id identifier rubyid_s'>s</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
@@ -511,9 +511,9 @@
511
511
  </div>
512
512
 
513
513
  <div id="footer">
514
- Generated on Sat Nov 22 16:58:04 2014 by
514
+ Generated on Thu Mar 17 13:32:50 2016 by
515
515
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
516
- 0.8.7.6 (ruby-2.1.5).
516
+ 0.8.7.6 (ruby-2.2.4).
517
517
  </div>
518
518
 
519
519
  </body>
@@ -94,11 +94,15 @@
94
94
 
95
95
 
96
96
 
97
+ <dt class="r2">Includes:</dt>
98
+ <dd class="r2">Redirecting</dd>
99
+
100
+
97
101
 
98
102
 
99
103
 
100
- <dt class="r2 last">Defined in:</dt>
101
- <dd class="r2 last">lib/autoc/collection.rb</dd>
104
+ <dt class="r1 last">Defined in:</dt>
105
+ <dd class="r1 last">lib/autoc/collection.rb</dd>
102
106
 
103
107
  </dl>
104
108
  <div class="clear"></div>
@@ -359,7 +363,33 @@ the collection being iterated <strong>must not</strong> be modified in any way o
359
363
 
360
364
 
361
365
 
362
- <span class="summary_desc"><div class='inline'></div></span>
366
+ <span class="summary_desc"><div class='inline'><div class="paragraph">
367
+ <p>Collection always has equality tester but the element is required to be comparable on its own because collection comparison incurs comparison of all contained elements.</p>
368
+ </div></div></span>
369
+
370
+ </li>
371
+
372
+
373
+ <li class="public ">
374
+ <span class="summary_signature">
375
+
376
+ <a href="#constructible%3F-instance_method" title="#constructible? (instance method)">- (Boolean) <strong>constructible?</strong> </a>
377
+
378
+
379
+
380
+ </span>
381
+
382
+
383
+
384
+
385
+
386
+
387
+
388
+
389
+
390
+ <span class="summary_desc"><div class='inline'><div class="paragraph">
391
+ <p>Collection always has default constructor.</p>
392
+ </div></div></span>
363
393
 
364
394
  </li>
365
395
 
@@ -381,7 +411,33 @@ the collection being iterated <strong>must not</strong> be modified in any way o
381
411
 
382
412
 
383
413
 
384
- <span class="summary_desc"><div class='inline'></div></span>
414
+ <span class="summary_desc"><div class='inline'><div class="paragraph">
415
+ <p>Collection always has copy constructor but the element is required to be copyable on its own because collection copying incurs copying of all contained elements.</p>
416
+ </div></div></span>
417
+
418
+ </li>
419
+
420
+
421
+ <li class="public ">
422
+ <span class="summary_signature">
423
+
424
+ <a href="#destructible%3F-instance_method" title="#destructible? (instance method)">- (Boolean) <strong>destructible?</strong> </a>
425
+
426
+
427
+
428
+ </span>
429
+
430
+
431
+
432
+
433
+
434
+
435
+
436
+
437
+
438
+ <span class="summary_desc"><div class='inline'><div class="paragraph">
439
+ <p>Collection always has destructor but the element is required to be destructible on its own because collection destruction incurs destruction of all contained elements.</p>
440
+ </div></div></span>
385
441
 
386
442
  </li>
387
443
 
@@ -447,7 +503,33 @@ the collection being iterated <strong>must not</strong> be modified in any way o
447
503
 
448
504
 
449
505
 
450
- <span class="summary_desc"><div class='inline'></div></span>
506
+ <span class="summary_desc"><div class='inline'><div class="paragraph">
507
+ <p>Collection always has hash calculation function but the element is required to be hashable on its own because collection comparison incurs hash calculation for all contained elements.</p>
508
+ </div></div></span>
509
+
510
+ </li>
511
+
512
+
513
+ <li class="public ">
514
+ <span class="summary_signature">
515
+
516
+ <a href="#initializable%3F-instance_method" title="#initializable? (instance method)">- (Boolean) <strong>initializable?</strong> </a>
517
+
518
+
519
+
520
+ </span>
521
+
522
+
523
+
524
+
525
+
526
+
527
+
528
+
529
+
530
+ <span class="summary_desc"><div class='inline'><div class="paragraph">
531
+ <p>Collection always has constructor.</p>
532
+ </div></div></span>
451
533
 
452
534
  </li>
453
535
 
@@ -512,8 +594,9 @@ the collection being iterated <strong>must not</strong> be modified in any way o
512
594
 
513
595
 
514
596
 
597
+
515
598
  <h3 class="inherited">Methods inherited from <span class='object_link'><a href="Type.html" title="AutoC::Type (class)">Type</a></span></h3>
516
- <p class="inherited"><span class='object_link'><a href="Type.html#abort-instance_method" title="AutoC::Type#abort (method)">#abort</a></span>, <span class='object_link'><a href="Type.html#assert-instance_method" title="AutoC::Type#assert (method)">#assert</a></span>, <span class='object_link'><a href="Type.html#calloc-instance_method" title="AutoC::Type#calloc (method)">#calloc</a></span>, <span class='object_link'><a href="Type.html#coerce-class_method" title="AutoC::Type.coerce (method)">coerce</a></span>, <span class='object_link'><a href="Type.html#constructible%3F-instance_method" title="AutoC::Type#constructible? (method)">#constructible?</a></span>, <span class='object_link'><a href="Type.html#destructible%3F-instance_method" title="AutoC::Type#destructible? (method)">#destructible?</a></span>, <span class='object_link'><a href="Type.html#extern-instance_method" title="AutoC::Type#extern (method)">#extern</a></span>, <span class='object_link'><a href="Type.html#free-instance_method" title="AutoC::Type#free (method)">#free</a></span>, <span class='object_link'><a href="Type.html#inline-instance_method" title="AutoC::Type#inline (method)">#inline</a></span>, <span class='object_link'><a href="Type.html#malloc-instance_method" title="AutoC::Type#malloc (method)">#malloc</a></span>, <span class='object_link'><a href="Type.html#method_missing-instance_method" title="AutoC::Type#method_missing (method)">#method_missing</a></span>, <span class='object_link'><a href="Type.html#orderable%3F-instance_method" title="AutoC::Type#orderable? (method)">#orderable?</a></span>, <span class='object_link'><a href="Type.html#prefix-instance_method" title="AutoC::Type#prefix (method)">#prefix</a></span>, <span class='object_link'><a href="Type.html#private%3F-instance_method" title="AutoC::Type#private? (method)">#private?</a></span>, <span class='object_link'><a href="Type.html#public%3F-instance_method" title="AutoC::Type#public? (method)">#public?</a></span>, <span class='object_link'><a href="Type.html#static-instance_method" title="AutoC::Type#static (method)">#static</a></span>, <span class='object_link'><a href="Type.html#static%3F-instance_method" title="AutoC::Type#static? (method)">#static?</a></span>, <span class='object_link'><a href="Type.html#write_decls-instance_method" title="AutoC::Type#write_decls (method)">#write_decls</a></span>, <span class='object_link'><a href="Type.html#write_defs-instance_method" title="AutoC::Type#write_defs (method)">#write_defs</a></span>, <span class='object_link'><a href="Type.html#write_intf-instance_method" title="AutoC::Type#write_intf (method)">#write_intf</a></span></p>
599
+ <p class="inherited"><span class='object_link'><a href="Type.html#abort-instance_method" title="AutoC::Type#abort (method)">#abort</a></span>, <span class='object_link'><a href="Type.html#assert-instance_method" title="AutoC::Type#assert (method)">#assert</a></span>, <span class='object_link'><a href="Type.html#calloc-instance_method" title="AutoC::Type#calloc (method)">#calloc</a></span>, <span class='object_link'><a href="Type.html#coerce-class_method" title="AutoC::Type.coerce (method)">coerce</a></span>, <span class='object_link'><a href="Type.html#extern-instance_method" title="AutoC::Type#extern (method)">#extern</a></span>, <span class='object_link'><a href="Type.html#free-instance_method" title="AutoC::Type#free (method)">#free</a></span>, <span class='object_link'><a href="Type.html#inline-instance_method" title="AutoC::Type#inline (method)">#inline</a></span>, <span class='object_link'><a href="Type.html#malloc-instance_method" title="AutoC::Type#malloc (method)">#malloc</a></span>, <span class='object_link'><a href="Type.html#method_missing-instance_method" title="AutoC::Type#method_missing (method)">#method_missing</a></span>, <span class='object_link'><a href="Type.html#orderable%3F-instance_method" title="AutoC::Type#orderable? (method)">#orderable?</a></span>, <span class='object_link'><a href="Type.html#prefix-instance_method" title="AutoC::Type#prefix (method)">#prefix</a></span>, <span class='object_link'><a href="Type.html#private%3F-instance_method" title="AutoC::Type#private? (method)">#private?</a></span>, <span class='object_link'><a href="Type.html#public%3F-instance_method" title="AutoC::Type#public? (method)">#public?</a></span>, <span class='object_link'><a href="Type.html#static-instance_method" title="AutoC::Type#static (method)">#static</a></span>, <span class='object_link'><a href="Type.html#static%3F-instance_method" title="AutoC::Type#static? (method)">#static?</a></span>, <span class='object_link'><a href="Type.html#write_decls-instance_method" title="AutoC::Type#write_decls (method)">#write_decls</a></span>, <span class='object_link'><a href="Type.html#write_defs-instance_method" title="AutoC::Type#write_defs (method)">#write_defs</a></span>, <span class='object_link'><a href="Type.html#write_intf-instance_method" title="AutoC::Type#write_intf (method)">#write_intf</a></span></p>
517
600
 
518
601
 
519
602
 
@@ -554,33 +637,23 @@ the collection being iterated <strong>must not</strong> be modified in any way o
554
637
  <pre class="lines">
555
638
 
556
639
 
557
- 85
558
- 86
559
640
  87
560
641
  88
561
642
  89
562
643
  90
563
644
  91
564
645
  92
565
- 93
566
- 94
567
- 95
568
- 96</pre>
646
+ 93</pre>
569
647
  </td>
570
648
  <td>
571
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 85</span>
649
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 87</span>
572
650
 
573
651
  <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_type_name'>type_name</span><span class='comma'>,</span> <span class='id identifier rubyid_element_type'>element_type</span><span class='comma'>,</span> <span class='id identifier rubyid_visibility'>visibility</span> <span class='op'>=</span> <span class='symbol'>:public</span><span class='rparen'>)</span>
574
652
  <span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_type_name'>type_name</span><span class='comma'>,</span> <span class='id identifier rubyid_visibility'>visibility</span><span class='rparen'>)</span>
575
653
  <span class='ivar'>@it_ref</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_it'>it</span><span class='embexpr_end'>}</span><span class='tstring_content'>*</span><span class='tstring_end'>&quot;</span></span>
576
654
  <span class='ivar'>@element</span> <span class='op'>=</span> <span class='const'>Type</span><span class='period'>.</span><span class='id identifier rubyid_coerce'>coerce</span><span class='lparen'>(</span><span class='id identifier rubyid_element_type'>element_type</span><span class='rparen'>)</span>
577
- <span class='ivar'>@ctor</span> <span class='op'>=</span> <span class='id identifier rubyid_define_function'>define_function</span><span class='lparen'>(</span><span class='symbol'>:ctor</span><span class='comma'>,</span> <span class='const'>Function</span><span class='op'>::</span><span class='const'>Signature</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='op'>^</span><span class='symbol'>:self</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='rparen'>)</span>
578
- <span class='ivar'>@dtor</span> <span class='op'>=</span> <span class='id identifier rubyid_define_function'>define_function</span><span class='lparen'>(</span><span class='symbol'>:dtor</span><span class='comma'>,</span> <span class='const'>Function</span><span class='op'>::</span><span class='const'>Signature</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='op'>^</span><span class='symbol'>:self</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='rparen'>)</span>
579
- <span class='ivar'>@copy</span> <span class='op'>=</span> <span class='id identifier rubyid_define_function'>define_function</span><span class='lparen'>(</span><span class='symbol'>:copy</span><span class='comma'>,</span> <span class='const'>Function</span><span class='op'>::</span><span class='const'>Signature</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='op'>^</span><span class='symbol'>:dst</span><span class='comma'>,</span> <span class='id identifier rubyid_type_ref'>type_ref</span><span class='op'>^</span><span class='symbol'>:src</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='rparen'>)</span>
580
- <span class='ivar'>@equal</span> <span class='op'>=</span> <span class='id identifier rubyid_define_function'>define_function</span><span class='lparen'>(</span><span class='symbol'>:equal</span><span class='comma'>,</span> <span class='const'>Function</span><span class='op'>::</span><span class='const'>Signature</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='op'>^</span><span class='symbol'>:lt</span><span class='comma'>,</span> <span class='id identifier rubyid_type_ref'>type_ref</span><span class='op'>^</span><span class='symbol'>:rt</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='symbol'>:int</span><span class='rparen'>)</span><span class='rparen'>)</span>
581
- <span class='ivar'>@identify</span> <span class='op'>=</span> <span class='id identifier rubyid_define_function'>define_function</span><span class='lparen'>(</span><span class='symbol'>:identify</span><span class='comma'>,</span> <span class='const'>Function</span><span class='op'>::</span><span class='const'>Signature</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='op'>^</span><span class='symbol'>:self</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='symbol'>:size_t</span><span class='rparen'>)</span><span class='rparen'>)</span>
582
- <span class='ivar'>@less</span> <span class='op'>=</span> <span class='id identifier rubyid_define_function'>define_function</span><span class='lparen'>(</span><span class='symbol'>:less</span><span class='comma'>,</span> <span class='const'>Function</span><span class='op'>::</span><span class='const'>Signature</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='id identifier rubyid_type_ref'>type_ref</span><span class='op'>^</span><span class='symbol'>:lt</span><span class='comma'>,</span> <span class='id identifier rubyid_type_ref'>type_ref</span><span class='op'>^</span><span class='symbol'>:rt</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='symbol'>:int</span><span class='rparen'>)</span><span class='rparen'>)</span>
583
- <span class='id identifier rubyid_element_type_check'>element_type_check</span><span class='lparen'>(</span><span class='id identifier rubyid_element'>element</span><span class='rparen'>)</span>
655
+ <span class='id identifier rubyid_initialize_redirectors'>initialize_redirectors</span>
656
+ <span class='id identifier rubyid_element_requirement'>element_requirement</span><span class='lparen'>(</span><span class='id identifier rubyid_element'>element</span><span class='rparen'>)</span>
584
657
  <span class='kw'>end</span></pre>
585
658
  </td>
586
659
  </tr>
@@ -630,12 +703,12 @@ the collection being iterated <strong>must not</strong> be modified in any way o
630
703
  <pre class="lines">
631
704
 
632
705
 
633
- 75
634
- 76
635
- 77</pre>
706
+ 77
707
+ 78
708
+ 79</pre>
636
709
  </td>
637
710
  <td>
638
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 75</span>
711
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 77</span>
639
712
 
640
713
  <span class='kw'>def</span> <span class='id identifier rubyid_element'>element</span>
641
714
  <span class='ivar'>@element</span>
@@ -673,12 +746,12 @@ the collection being iterated <strong>must not</strong> be modified in any way o
673
746
  <pre class="lines">
674
747
 
675
748
 
676
- 75
677
- 76
678
- 77</pre>
749
+ 77
750
+ 78
751
+ 79</pre>
679
752
  </td>
680
753
  <td>
681
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 75</span>
754
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 77</span>
682
755
 
683
756
  <span class='kw'>def</span> <span class='id identifier rubyid_it_ref'>it_ref</span>
684
757
  <span class='ivar'>@it_ref</span>
@@ -714,10 +787,10 @@ the collection being iterated <strong>must not</strong> be modified in any way o
714
787
  <pre class="lines">
715
788
 
716
789
 
717
- 79</pre>
790
+ 81</pre>
718
791
  </td>
719
792
  <td>
720
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 79</span>
793
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 81</span>
721
794
 
722
795
  <span class='kw'>def</span> <span class='op'>==</span><span class='lparen'>(</span><span class='id identifier rubyid_other'>other</span><span class='rparen'>)</span> <span class='kw'>super</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_element'>element</span> <span class='op'>==</span> <span class='id identifier rubyid_other'>other</span><span class='period'>.</span><span class='id identifier rubyid_element'>element</span> <span class='kw'>end</span></pre>
723
796
  </td>
@@ -736,7 +809,60 @@ the collection being iterated <strong>must not</strong> be modified in any way o
736
809
 
737
810
  </h3><div class="docstring">
738
811
  <div class="discussion">
812
+ <div class="paragraph">
813
+ <p>Collection always has equality tester but the element is required to be comparable on its own
814
+ because collection comparison incurs comparison of all contained elements</p>
815
+ </div>
816
+
817
+ </div>
818
+ </div>
819
+ <div class="tags">
820
+
821
+ <p class="tag_title">Returns:</p>
822
+ <ul class="return">
823
+
824
+ <li>
825
+
826
+
827
+ <span class='type'>(<tt>Boolean</tt>)</span>
828
+
829
+
830
+
831
+ </li>
832
+
833
+ </ul>
834
+
835
+ </div><table class="source_code">
836
+ <tr>
837
+ <td>
838
+ <pre class="lines">
839
+
840
+
841
+ 114</pre>
842
+ </td>
843
+ <td>
844
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 114</span>
845
+
846
+ <span class='kw'>def</span> <span class='id identifier rubyid_comparable?'>comparable?</span><span class='semicolon'>;</span> <span class='kw'>true</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_element'>element</span><span class='period'>.</span><span class='id identifier rubyid_comparable?'>comparable?</span> <span class='kw'>end</span></pre>
847
+ </td>
848
+ </tr>
849
+ </table>
850
+ </div>
739
851
 
852
+ <div class="method_details ">
853
+ <h3 class="signature " id="constructible?-instance_method">
854
+
855
+ - (<tt>Boolean</tt>) <strong>constructible?</strong>
856
+
857
+
858
+
859
+
860
+
861
+ </h3><div class="docstring">
862
+ <div class="discussion">
863
+ <div class="paragraph">
864
+ <p>Collection always has default constructor</p>
865
+ </div>
740
866
 
741
867
  </div>
742
868
  </div>
@@ -762,12 +888,12 @@ the collection being iterated <strong>must not</strong> be modified in any way o
762
888
  <pre class="lines">
763
889
 
764
890
 
765
- 117</pre>
891
+ 99</pre>
766
892
  </td>
767
893
  <td>
768
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 117</span>
894
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 99</span>
769
895
 
770
- <span class='kw'>def</span> <span class='id identifier rubyid_comparable?'>comparable?</span><span class='semicolon'>;</span> <span class='kw'>super</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_element'>element</span><span class='period'>.</span><span class='id identifier rubyid_comparable?'>comparable?</span> <span class='kw'>end</span></pre>
896
+ <span class='kw'>def</span> <span class='id identifier rubyid_constructible?'>constructible?</span><span class='semicolon'>;</span> <span class='kw'>true</span> <span class='kw'>end</span></pre>
771
897
  </td>
772
898
  </tr>
773
899
  </table>
@@ -784,7 +910,61 @@ the collection being iterated <strong>must not</strong> be modified in any way o
784
910
 
785
911
  </h3><div class="docstring">
786
912
  <div class="discussion">
913
+ <div class="paragraph">
914
+ <p>Collection always has copy constructor but the element is required to be copyable on its own
915
+ because collection copying incurs copying of all contained elements</p>
916
+ </div>
917
+
918
+ </div>
919
+ </div>
920
+ <div class="tags">
921
+
922
+ <p class="tag_title">Returns:</p>
923
+ <ul class="return">
924
+
925
+ <li>
926
+
927
+
928
+ <span class='type'>(<tt>Boolean</tt>)</span>
929
+
930
+
931
+
932
+ </li>
933
+
934
+ </ul>
935
+
936
+ </div><table class="source_code">
937
+ <tr>
938
+ <td>
939
+ <pre class="lines">
940
+
941
+
942
+ 110</pre>
943
+ </td>
944
+ <td>
945
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 110</span>
946
+
947
+ <span class='kw'>def</span> <span class='id identifier rubyid_copyable?'>copyable?</span><span class='semicolon'>;</span> <span class='kw'>true</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_element'>element</span><span class='period'>.</span><span class='id identifier rubyid_copyable?'>copyable?</span> <span class='kw'>end</span></pre>
948
+ </td>
949
+ </tr>
950
+ </table>
951
+ </div>
787
952
 
953
+ <div class="method_details ">
954
+ <h3 class="signature " id="destructible?-instance_method">
955
+
956
+ - (<tt>Boolean</tt>) <strong>destructible?</strong>
957
+
958
+
959
+
960
+
961
+
962
+ </h3><div class="docstring">
963
+ <div class="discussion">
964
+ <div class="paragraph">
965
+ <p>Collection always has destructor but the element is required to be destructible on its own
966
+ because collection destruction incurs destruction of all contained elements</p>
967
+ </div>
788
968
 
789
969
  </div>
790
970
  </div>
@@ -810,12 +990,12 @@ the collection being iterated <strong>must not</strong> be modified in any way o
810
990
  <pre class="lines">
811
991
 
812
992
 
813
- 115</pre>
993
+ 106</pre>
814
994
  </td>
815
995
  <td>
816
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 115</span>
996
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 106</span>
817
997
 
818
- <span class='kw'>def</span> <span class='id identifier rubyid_copyable?'>copyable?</span><span class='semicolon'>;</span> <span class='kw'>super</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_element'>element</span><span class='period'>.</span><span class='id identifier rubyid_copyable?'>copyable?</span> <span class='kw'>end</span></pre>
998
+ <span class='kw'>def</span> <span class='id identifier rubyid_destructible?'>destructible?</span><span class='semicolon'>;</span> <span class='kw'>true</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_element'>element</span><span class='period'>.</span><span class='id identifier rubyid_destructible?'>destructible?</span> <span class='kw'>end</span></pre>
819
999
  </td>
820
1000
  </tr>
821
1001
  </table>
@@ -836,10 +1016,10 @@ the collection being iterated <strong>must not</strong> be modified in any way o
836
1016
  <pre class="lines">
837
1017
 
838
1018
 
839
- 83</pre>
1019
+ 85</pre>
840
1020
  </td>
841
1021
  <td>
842
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 83</span>
1022
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 85</span>
843
1023
 
844
1024
  <span class='kw'>def</span> <span class='id identifier rubyid_entities'>entities</span><span class='semicolon'>;</span> <span class='kw'>super</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_element'>element</span> <span class='kw'>end</span></pre>
845
1025
  </td>
@@ -862,10 +1042,10 @@ the collection being iterated <strong>must not</strong> be modified in any way o
862
1042
  <pre class="lines">
863
1043
 
864
1044
 
865
- 77</pre>
1045
+ 79</pre>
866
1046
  </td>
867
1047
  <td>
868
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 77</span>
1048
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 79</span>
869
1049
 
870
1050
  <span class='kw'>def</span> <span class='id identifier rubyid_hash'>hash</span><span class='semicolon'>;</span> <span class='kw'>super</span> <span class='op'>^</span> <span class='id identifier rubyid_element'>element</span><span class='period'>.</span><span class='id identifier rubyid_hash'>hash</span> <span class='kw'>end</span></pre>
871
1051
  </td>
@@ -884,7 +1064,66 @@ the collection being iterated <strong>must not</strong> be modified in any way o
884
1064
 
885
1065
  </h3><div class="docstring">
886
1066
  <div class="discussion">
1067
+ <div class="paragraph">
1068
+ <p>Collection always has hash calculation function but the element is required to be hashable on its own
1069
+ because collection comparison incurs hash calculation for all contained elements</p>
1070
+ </div>
1071
+
1072
+ </div>
1073
+ </div>
1074
+ <div class="tags">
1075
+
1076
+ <p class="tag_title">Returns:</p>
1077
+ <ul class="return">
1078
+
1079
+ <li>
1080
+
1081
+
1082
+ <span class='type'>(<tt>Boolean</tt>)</span>
1083
+
1084
+
1085
+
1086
+ </li>
1087
+
1088
+ </ul>
1089
+
1090
+ </div><table class="source_code">
1091
+ <tr>
1092
+ <td>
1093
+ <pre class="lines">
1094
+
1095
+
1096
+ 120
1097
+ 121
1098
+ 122
1099
+ 123</pre>
1100
+ </td>
1101
+ <td>
1102
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 120</span>
1103
+
1104
+ <span class='kw'>def</span> <span class='id identifier rubyid_hashable?'>hashable?</span>
1105
+ <span class='comment'># Since using collection as an element of a hash-based container also requires it to be comparable as well
1106
+ </span> <span class='id identifier rubyid_comparable?'>comparable?</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_element'>element</span><span class='period'>.</span><span class='id identifier rubyid_hashable?'>hashable?</span>
1107
+ <span class='kw'>end</span></pre>
1108
+ </td>
1109
+ </tr>
1110
+ </table>
1111
+ </div>
887
1112
 
1113
+ <div class="method_details ">
1114
+ <h3 class="signature " id="initializable?-instance_method">
1115
+
1116
+ - (<tt>Boolean</tt>) <strong>initializable?</strong>
1117
+
1118
+
1119
+
1120
+
1121
+
1122
+ </h3><div class="docstring">
1123
+ <div class="discussion">
1124
+ <div class="paragraph">
1125
+ <p>Collection always has constructor</p>
1126
+ </div>
888
1127
 
889
1128
  </div>
890
1129
  </div>
@@ -910,12 +1149,12 @@ the collection being iterated <strong>must not</strong> be modified in any way o
910
1149
  <pre class="lines">
911
1150
 
912
1151
 
913
- 119</pre>
1152
+ 102</pre>
914
1153
  </td>
915
1154
  <td>
916
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 119</span>
1155
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 102</span>
917
1156
 
918
- <span class='kw'>def</span> <span class='id identifier rubyid_hashable?'>hashable?</span><span class='semicolon'>;</span> <span class='kw'>super</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_element'>element</span><span class='period'>.</span><span class='id identifier rubyid_hashable?'>hashable?</span> <span class='kw'>end</span></pre>
1157
+ <span class='kw'>def</span> <span class='id identifier rubyid_initializable?'>initializable?</span><span class='semicolon'>;</span> <span class='kw'>true</span> <span class='kw'>end</span></pre>
919
1158
  </td>
920
1159
  </tr>
921
1160
  </table>
@@ -936,41 +1175,15 @@ the collection being iterated <strong>must not</strong> be modified in any way o
936
1175
  <pre class="lines">
937
1176
 
938
1177
 
939
- 98
940
- 99
941
- 100
942
- 101
943
- 102
944
- 103
945
- 104
946
- 105
947
- 106
948
- 107
949
- 108
950
- 109
951
- 110
952
- 111
953
- 112
954
- 113</pre>
1178
+ 125
1179
+ 126
1180
+ 127</pre>
955
1181
  </td>
956
1182
  <td>
957
- <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 98</span>
1183
+ <pre class="code"><span class="info file"># File 'lib/autoc/collection.rb', line 125</span>
958
1184
 
959
1185
  <span class='kw'>def</span> <span class='id identifier rubyid_write_intf_decls'>write_intf_decls</span><span class='lparen'>(</span><span class='id identifier rubyid_stream'>stream</span><span class='comma'>,</span> <span class='id identifier rubyid_declare'>declare</span><span class='comma'>,</span> <span class='id identifier rubyid_define'>define</span><span class='rparen'>)</span>
960
- <span class='comment'># Emit default redirection macros
961
- </span> <span class='comment'># Unlike other special methods the constructors may have extra arguments
962
- </span> <span class='comment'># Assume the constructor&#39;s first parameter is always a target
963
- </span> <span class='id identifier rubyid_ctor_ex'>ctor_ex</span> <span class='op'>=</span> <span class='id identifier rubyid_ctor'>ctor</span><span class='period'>.</span><span class='id identifier rubyid_parameters'>parameters</span><span class='period'>.</span><span class='id identifier rubyid_names'>names</span><span class='lbracket'>[</span><span class='int'>1</span><span class='op'>..</span><span class='op'>-</span><span class='int'>1</span><span class='rbracket'>]</span>
964
- <span class='id identifier rubyid_ctor_lt'>ctor_lt</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>self</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_concat'>concat</span><span class='lparen'>(</span><span class='id identifier rubyid_ctor_ex'>ctor_ex</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>,</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
965
- <span class='id identifier rubyid_ctor_rt'>ctor_rt</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&amp;self</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_concat'>concat</span><span class='lparen'>(</span><span class='id identifier rubyid_ctor_ex'>ctor_ex</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>,</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
966
- <span class='id identifier rubyid_stream'>stream</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>%$</span><span class='tstring_content'>
967
- #define _</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_ctor'>ctor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_ctor_lt'>ctor_lt</span><span class='embexpr_end'>}</span><span class='tstring_content'>) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_ctor'>ctor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_ctor_rt'>ctor_rt</span><span class='embexpr_end'>}</span><span class='tstring_content'>)
968
- #define _</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_dtor'>dtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_dtor'>dtor</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&amp;self)
969
- #define _</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_identify'>identify</span><span class='embexpr_end'>}</span><span class='tstring_content'>(self) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_identify'>identify</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&amp;self)
970
- #define _</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_copy'>copy</span><span class='embexpr_end'>}</span><span class='tstring_content'>(dst,src) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_copy'>copy</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&amp;dst,&amp;src)
971
- #define _</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_equal'>equal</span><span class='embexpr_end'>}</span><span class='tstring_content'>(lt,rt) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_equal'>equal</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&amp;lt,&amp;rt)
972
- #define _</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_less'>less</span><span class='embexpr_end'>}</span><span class='tstring_content'>(lt,rt) </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_less'>less</span><span class='embexpr_end'>}</span><span class='tstring_content'>(&amp;lt,&amp;rt)
973
- </span><span class='tstring_end'>$</span></span>
1186
+ <span class='id identifier rubyid_write_redirectors'>write_redirectors</span><span class='lparen'>(</span><span class='id identifier rubyid_stream'>stream</span><span class='comma'>,</span> <span class='id identifier rubyid_declare'>declare</span><span class='comma'>,</span> <span class='id identifier rubyid_define'>define</span><span class='rparen'>)</span>
974
1187
  <span class='kw'>end</span></pre>
975
1188
  </td>
976
1189
  </tr>
@@ -982,9 +1195,9 @@ the collection being iterated <strong>must not</strong> be modified in any way o
982
1195
  </div>
983
1196
 
984
1197
  <div id="footer">
985
- Generated on Sat Nov 22 16:58:04 2014 by
1198
+ Generated on Thu Mar 17 13:32:51 2016 by
986
1199
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
987
- 0.8.7.6 (ruby-2.1.5).
1200
+ 0.8.7.6 (ruby-2.2.4).
988
1201
  </div>
989
1202
 
990
1203
  </body>