autoc 1.2 → 1.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.
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>