rubybreaker 0.0.4 → 0.0.5

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 (97) hide show
  1. data/NEWS +5 -0
  2. data/NOTES +9 -0
  3. data/README.md +100 -183
  4. data/Rakefile +21 -6
  5. data/VERSION +1 -1
  6. data/bin/rubybreaker +34 -50
  7. data/lib/rubybreaker/debug/debug.rb +6 -0
  8. data/lib/rubybreaker/doc/rdoc.rb +37 -0
  9. data/lib/rubybreaker/doc.rb +3 -0
  10. data/lib/rubybreaker/runtime/inspector.rb +6 -28
  11. data/lib/rubybreaker/runtime/monitor.rb +21 -17
  12. data/lib/rubybreaker/runtime/object_wrapper.rb +7 -2
  13. data/lib/rubybreaker/runtime/type_system.rb +3 -5
  14. data/lib/rubybreaker/runtime/typesig_unparser.rb +1 -4
  15. data/lib/rubybreaker/runtime.rb +64 -105
  16. data/lib/rubybreaker/task.rb +97 -0
  17. data/lib/rubybreaker/test/rspec.rb +1 -1
  18. data/lib/rubybreaker/test/testcase.rb +13 -28
  19. data/lib/rubybreaker/type/type.rb +1 -1
  20. data/lib/rubybreaker/typing/subtyping.rb +10 -5
  21. data/lib/rubybreaker/util.rb +0 -1
  22. data/lib/rubybreaker.rb +163 -115
  23. data/test/integrated/tc_both_broken_breakable.rb +5 -4
  24. data/test/integrated/tc_class_methods.rb +4 -3
  25. data/test/integrated/tc_inherit_broken.rb +4 -3
  26. data/test/integrated/tc_method_missing.rb +4 -4
  27. data/test/integrated/tc_namespace.rb +4 -2
  28. data/test/integrated/tc_simple1.rb +4 -3
  29. data/test/runtime/tc_obj_wrapper.rb +25 -6
  30. data/test/runtime/tc_typesig_parser.rb +0 -1
  31. data/test/testtask/sample.rb +10 -0
  32. data/test/testtask/tc_testtask.rb +25 -0
  33. data/test/ts_rspec.rb +21 -15
  34. data/test/typing/tc_typing.rb +2 -3
  35. data/webpage/index.html +105 -193
  36. data/webpage/rdoc/Kernel.html +286 -0
  37. data/webpage/rdoc/Object.html +17 -11
  38. data/webpage/rdoc/Rake/RubyBreakerTestTask.html +374 -0
  39. data/webpage/rdoc/Rake.html +212 -0
  40. data/webpage/rdoc/RubyBreaker/Breakable.html +24 -40
  41. data/webpage/rdoc/RubyBreaker/Broken.html +21 -69
  42. data/webpage/rdoc/RubyBreaker/Context.html +16 -10
  43. data/webpage/rdoc/RubyBreaker/Errors/InternalError.html +16 -10
  44. data/webpage/rdoc/RubyBreaker/Errors/InvalidSubtypeCheck.html +16 -10
  45. data/webpage/rdoc/RubyBreaker/Errors/InvalidTypeConstruction.html +16 -10
  46. data/webpage/rdoc/RubyBreaker/Errors/SubtypeFailure.html +16 -10
  47. data/webpage/rdoc/RubyBreaker/Errors/TypeError.html +16 -10
  48. data/webpage/rdoc/RubyBreaker/Errors/UserError.html +16 -10
  49. data/webpage/rdoc/RubyBreaker/Errors.html +16 -10
  50. data/webpage/rdoc/RubyBreaker/ObjectPosition.html +16 -10
  51. data/webpage/rdoc/RubyBreaker/Position.html +16 -10
  52. data/webpage/rdoc/RubyBreaker/{TestCase.html → RDocSupport.html} +81 -82
  53. data/webpage/rdoc/RubyBreaker/RubyTypeUtils.html +16 -10
  54. data/webpage/rdoc/RubyBreaker/Runtime/Inspector.html +25 -44
  55. data/webpage/rdoc/RubyBreaker/Runtime/MethodInfo.html +16 -10
  56. data/webpage/rdoc/RubyBreaker/Runtime/Monitor.html +19 -13
  57. data/webpage/rdoc/RubyBreaker/Runtime/MonitorInstaller.html +37 -25
  58. data/webpage/rdoc/RubyBreaker/Runtime/MonitorSwitch.html +20 -14
  59. data/webpage/rdoc/RubyBreaker/Runtime/MonitorUtils.html +21 -15
  60. data/webpage/rdoc/RubyBreaker/Runtime/ObjectWrapper.html +23 -12
  61. data/webpage/rdoc/RubyBreaker/Runtime/Pluggable.html +16 -10
  62. data/webpage/rdoc/RubyBreaker/Runtime/TypeSigParser.html +16 -10
  63. data/webpage/rdoc/RubyBreaker/Runtime/{TypesigUnparser.html → TypeSigUnparser.html} +19 -16
  64. data/webpage/rdoc/RubyBreaker/Runtime/TypeSystem.html +18 -14
  65. data/webpage/rdoc/RubyBreaker/Runtime.html +145 -11
  66. data/webpage/rdoc/RubyBreaker/TypeComparer.html +16 -10
  67. data/webpage/rdoc/RubyBreaker/TypeDefs/AnyType.html +16 -10
  68. data/webpage/rdoc/RubyBreaker/TypeDefs/BlockType.html +16 -10
  69. data/webpage/rdoc/RubyBreaker/TypeDefs/DuckType.html +16 -10
  70. data/webpage/rdoc/RubyBreaker/TypeDefs/FusionType.html +16 -10
  71. data/webpage/rdoc/RubyBreaker/TypeDefs/MethodListType.html +16 -10
  72. data/webpage/rdoc/RubyBreaker/TypeDefs/MethodType.html +16 -10
  73. data/webpage/rdoc/RubyBreaker/TypeDefs/NilType.html +16 -10
  74. data/webpage/rdoc/RubyBreaker/TypeDefs/NominalType.html +16 -10
  75. data/webpage/rdoc/RubyBreaker/TypeDefs/OptionalType.html +16 -10
  76. data/webpage/rdoc/RubyBreaker/TypeDefs/OrType.html +16 -10
  77. data/webpage/rdoc/RubyBreaker/TypeDefs/SelfType.html +17 -11
  78. data/webpage/rdoc/RubyBreaker/TypeDefs/Type.html +17 -11
  79. data/webpage/rdoc/RubyBreaker/TypeDefs/VarLengthType.html +16 -10
  80. data/webpage/rdoc/RubyBreaker/TypeDefs.html +16 -10
  81. data/webpage/rdoc/RubyBreaker/TypeUnparser.html +16 -10
  82. data/webpage/rdoc/RubyBreaker/Typing.html +17 -11
  83. data/webpage/rdoc/RubyBreaker/Util.html +16 -10
  84. data/webpage/rdoc/RubyBreaker.html +167 -34
  85. data/webpage/rdoc/{RubyBreaker/Runtime/TypePlaceholder.html → Test/Unit/TestCase.html} +68 -39
  86. data/webpage/rdoc/Test/Unit.html +211 -0
  87. data/webpage/rdoc/Test.html +211 -0
  88. data/webpage/rdoc/created.rid +18 -17
  89. data/webpage/rdoc/index.html +16 -10
  90. data/webpage/rdoc/js/search_index.js +1 -1
  91. data/webpage/rdoc/table_of_contents.html +61 -48
  92. metadata +21 -12
  93. data/lib/rubybreaker/rubylib/core.rb +0 -2483
  94. data/lib/rubybreaker/rubylib.rb +0 -3
  95. data/lib/rubybreaker/runtime/type_placeholder.rb +0 -23
  96. data/webpage/rdoc/RubyBreaker/Broken/BrokenEigen.html +0 -305
  97. data/webpage/rdoc/RubyBreaker/Main.html +0 -458
@@ -88,8 +88,6 @@
88
88
 
89
89
  <li><a href="../../RubyBreaker/Broken.html">RubyBreaker::Broken</a>
90
90
 
91
- <li><a href="../../RubyBreaker/Broken/BrokenEigen.html">RubyBreaker::Broken::BrokenEigen</a>
92
-
93
91
  <li><a href="../../RubyBreaker/Context.html">RubyBreaker::Context</a>
94
92
 
95
93
  <li><a href="../../RubyBreaker/Errors.html">RubyBreaker::Errors</a>
@@ -106,12 +104,12 @@
106
104
 
107
105
  <li><a href="../../RubyBreaker/Errors/UserError.html">RubyBreaker::Errors::UserError</a>
108
106
 
109
- <li><a href="../../RubyBreaker/Main.html">RubyBreaker::Main</a>
110
-
111
107
  <li><a href="../../RubyBreaker/ObjectPosition.html">RubyBreaker::ObjectPosition</a>
112
108
 
113
109
  <li><a href="../../RubyBreaker/Position.html">RubyBreaker::Position</a>
114
110
 
111
+ <li><a href="../../RubyBreaker/RDocSupport.html">RubyBreaker::RDocSupport</a>
112
+
115
113
  <li><a href="../../RubyBreaker/RubyTypeUtils.html">RubyBreaker::RubyTypeUtils</a>
116
114
 
117
115
  <li><a href="../../RubyBreaker/Runtime.html">RubyBreaker::Runtime</a>
@@ -132,15 +130,11 @@
132
130
 
133
131
  <li><a href="../../RubyBreaker/Runtime/Pluggable.html">RubyBreaker::Runtime::Pluggable</a>
134
132
 
135
- <li><a href="../../RubyBreaker/Runtime/TypePlaceholder.html">RubyBreaker::Runtime::TypePlaceholder</a>
136
-
137
133
  <li><a href="../../RubyBreaker/Runtime/TypeSigParser.html">RubyBreaker::Runtime::TypeSigParser</a>
138
134
 
139
- <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
140
-
141
- <li><a href="../../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
135
+ <li><a href="../../RubyBreaker/Runtime/TypeSigUnparser.html">RubyBreaker::Runtime::TypeSigUnparser</a>
142
136
 
143
- <li><a href="../../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
137
+ <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
144
138
 
145
139
  <li><a href="../../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
146
140
 
@@ -178,6 +172,18 @@
178
172
 
179
173
  <li><a href="../../RubyBreaker/Util.html">RubyBreaker::Util</a>
180
174
 
175
+ <li><a href="../../Test.html">Test</a>
176
+
177
+ <li><a href="../../Test/Unit.html">Test::Unit</a>
178
+
179
+ <li><a href="../../Test/Unit/TestCase.html">Test::Unit::TestCase</a>
180
+
181
+ <li><a href="../../Rake.html">Rake</a>
182
+
183
+ <li><a href="../../Rake/RubyBreakerTestTask.html">Rake::RubyBreakerTestTask</a>
184
+
185
+ <li><a href="../../Kernel.html">Kernel</a>
186
+
181
187
  <li><a href="../../Object.html">Object</a>
182
188
 
183
189
  </ul>
@@ -229,7 +235,7 @@
229
235
 
230
236
 
231
237
  <div class="method-source-code" id="get_alt_meth_name-source">
232
- <pre><span class="ruby-comment"># File lib/rubybreaker/runtime/monitor.rb, line 173</span>
238
+ <pre><span class="ruby-comment"># File lib/rubybreaker/runtime/monitor.rb, line 171</span>
233
239
  <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">get_alt_meth_name</span>(<span class="ruby-identifier">meth_name</span>)
234
240
  <span class="ruby-keyword">return</span> <span class="ruby-node">&quot;__#{meth_name}&quot;</span>
235
241
  <span class="ruby-keyword">end</span></pre>
@@ -259,7 +265,7 @@
259
265
 
260
266
 
261
267
  <div class="method-source-code" id="get_orig_meth_name-source">
262
- <pre><span class="ruby-comment"># File lib/rubybreaker/runtime/monitor.rb, line 178</span>
268
+ <pre><span class="ruby-comment"># File lib/rubybreaker/runtime/monitor.rb, line 176</span>
263
269
  <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">get_orig_meth_name</span>(<span class="ruby-identifier">meth_name</span>)
264
270
  <span class="ruby-keyword">return</span> <span class="ruby-identifier">meth_name</span>[<span class="ruby-value">2</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]
265
271
  <span class="ruby-keyword">end</span></pre>
@@ -304,7 +310,7 @@ call.</p>
304
310
 
305
311
 
306
312
  <div class="method-source-code" id="route-source">
307
- <pre><span class="ruby-comment"># File lib/rubybreaker/runtime/monitor.rb, line 101</span>
313
+ <pre><span class="ruby-comment"># File lib/rubybreaker/runtime/monitor.rb, line 99</span>
308
314
  <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">route</span>(<span class="ruby-identifier">obj</span>,<span class="ruby-identifier">meth_name</span>,*<span class="ruby-identifier">args</span>,&amp;<span class="ruby-identifier">blk</span>)
309
315
 
310
316
  <span class="ruby-comment"># remember the switch mode before turning it off</span>
@@ -339,11 +345,11 @@ call.</p>
339
345
  <span class="ruby-identifier">mod</span> = <span class="ruby-identifier">is_obj_mod</span> <span class="ruby-operator">?</span> <span class="ruby-constant">Runtime</span>.<span class="ruby-identifier">eigen_class</span>(<span class="ruby-identifier">obj</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">class</span>
340
346
 
341
347
  <span class="ruby-comment"># mm = get_module_monitor(mod) unless is_obj_mod</span>
342
- <span class="ruby-identifier">mm</span> = <span class="ruby-constant">Breakable</span><span class="ruby-operator">::</span><span class="ruby-constant">MONITOR_MAP</span>[<span class="ruby-identifier">mod</span>]
348
+ <span class="ruby-identifier">mm</span> = <span class="ruby-constant">MONITOR_MAP</span>[<span class="ruby-identifier">mod</span>]
343
349
 
344
350
  <span class="ruby-comment"># There is something wrong if there isn't a module monitor</span>
345
351
  <span class="ruby-comment"># associated with the call.</span>
346
- <span class="ruby-comment"># raise Exception if mm == nil || !mm.meth_type_map.include?(meth_name)</span>
352
+ <span class="ruby-comment"># raise Exception if mm == nil || !mm.include?(meth_name)</span>
347
353
 
348
354
  <span class="ruby-identifier">meth_info</span> = <span class="ruby-constant">MethodInfo</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">meth_name</span>, <span class="ruby-identifier">args</span>, <span class="ruby-identifier">blk</span>, <span class="ruby-keyword">nil</span>)
349
355
 
@@ -98,8 +98,6 @@
98
98
 
99
99
  <li><a href="../../RubyBreaker/Broken.html">RubyBreaker::Broken</a>
100
100
 
101
- <li><a href="../../RubyBreaker/Broken/BrokenEigen.html">RubyBreaker::Broken::BrokenEigen</a>
102
-
103
101
  <li><a href="../../RubyBreaker/Context.html">RubyBreaker::Context</a>
104
102
 
105
103
  <li><a href="../../RubyBreaker/Errors.html">RubyBreaker::Errors</a>
@@ -116,12 +114,12 @@
116
114
 
117
115
  <li><a href="../../RubyBreaker/Errors/UserError.html">RubyBreaker::Errors::UserError</a>
118
116
 
119
- <li><a href="../../RubyBreaker/Main.html">RubyBreaker::Main</a>
120
-
121
117
  <li><a href="../../RubyBreaker/ObjectPosition.html">RubyBreaker::ObjectPosition</a>
122
118
 
123
119
  <li><a href="../../RubyBreaker/Position.html">RubyBreaker::Position</a>
124
120
 
121
+ <li><a href="../../RubyBreaker/RDocSupport.html">RubyBreaker::RDocSupport</a>
122
+
125
123
  <li><a href="../../RubyBreaker/RubyTypeUtils.html">RubyBreaker::RubyTypeUtils</a>
126
124
 
127
125
  <li><a href="../../RubyBreaker/Runtime.html">RubyBreaker::Runtime</a>
@@ -142,15 +140,11 @@
142
140
 
143
141
  <li><a href="../../RubyBreaker/Runtime/Pluggable.html">RubyBreaker::Runtime::Pluggable</a>
144
142
 
145
- <li><a href="../../RubyBreaker/Runtime/TypePlaceholder.html">RubyBreaker::Runtime::TypePlaceholder</a>
146
-
147
143
  <li><a href="../../RubyBreaker/Runtime/TypeSigParser.html">RubyBreaker::Runtime::TypeSigParser</a>
148
144
 
149
- <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
150
-
151
- <li><a href="../../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
145
+ <li><a href="../../RubyBreaker/Runtime/TypeSigUnparser.html">RubyBreaker::Runtime::TypeSigUnparser</a>
152
146
 
153
- <li><a href="../../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
147
+ <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
154
148
 
155
149
  <li><a href="../../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
156
150
 
@@ -188,6 +182,18 @@
188
182
 
189
183
  <li><a href="../../RubyBreaker/Util.html">RubyBreaker::Util</a>
190
184
 
185
+ <li><a href="../../Test.html">Test</a>
186
+
187
+ <li><a href="../../Test/Unit.html">Test::Unit</a>
188
+
189
+ <li><a href="../../Test/Unit/TestCase.html">Test::Unit::TestCase</a>
190
+
191
+ <li><a href="../../Rake.html">Rake</a>
192
+
193
+ <li><a href="../../Rake/RubyBreakerTestTask.html">Rake::RubyBreakerTestTask</a>
194
+
195
+ <li><a href="../../Kernel.html">Kernel</a>
196
+
191
197
  <li><a href="../../Object.html">Object</a>
192
198
 
193
199
  </ul>
@@ -346,11 +352,16 @@ instance_exec</p>
346
352
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">method_missing</span>(<span class="ruby-identifier">mname</span>,*<span class="ruby-identifier">args</span>,&amp;<span class="ruby-identifier">blk</span>)
347
353
  <span class="ruby-operator">::</span><span class="ruby-constant">RubyBreaker</span>.<span class="ruby-identifier">log</span>(<span class="ruby-node">&quot;Method_missing for #{mname}&quot;</span>)
348
354
  <span class="ruby-keyword">if</span> <span class="ruby-constant">GLOBAL_MONITOR_SWITCH</span>.<span class="ruby-identifier">switch</span>
355
+ <span class="ruby-comment"># Must handle send method specially (do not track them)</span>
356
+ <span class="ruby-keyword">if</span> [<span class="ruby-value">:&quot;__send__&quot;</span>, <span class="ruby-value">:send</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">mname</span>)
357
+ <span class="ruby-identifier">mname</span> = <span class="ruby-identifier">args</span>[<span class="ruby-value">0</span>]
358
+ <span class="ruby-identifier">args</span> = <span class="ruby-identifier">args</span>[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]
359
+ <span class="ruby-keyword">end</span>
349
360
  <span class="ruby-ivar">@__rubybreaker_type</span>.<span class="ruby-identifier">add_meth</span>(<span class="ruby-identifier">mname</span>)
350
- <span class="ruby-identifier">retval</span> = <span class="ruby-ivar">@__rubybreaker_obj</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">mname</span>,*<span class="ruby-identifier">args</span>,&amp;<span class="ruby-identifier">blk</span>)
361
+ <span class="ruby-identifier">retval</span> = <span class="ruby-ivar">@__rubybreaker_obj</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">mname</span>, *<span class="ruby-identifier">args</span>, &amp;<span class="ruby-identifier">blk</span>)
351
362
  <span class="ruby-identifier">retval</span> = <span class="ruby-constant">ObjectWrapper</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">retval</span>)
352
363
  <span class="ruby-keyword">else</span>
353
- <span class="ruby-identifier">retval</span> = <span class="ruby-ivar">@__rubybreaker_obj</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">mname</span>,*<span class="ruby-identifier">args</span>,&amp;<span class="ruby-identifier">blk</span>)
364
+ <span class="ruby-identifier">retval</span> = <span class="ruby-ivar">@__rubybreaker_obj</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">mname</span>, *<span class="ruby-identifier">args</span>, &amp;<span class="ruby-identifier">blk</span>)
354
365
  <span class="ruby-keyword">end</span>
355
366
  <span class="ruby-keyword">return</span> <span class="ruby-identifier">retval</span>
356
367
  <span class="ruby-keyword">end</span></pre>
@@ -86,8 +86,6 @@
86
86
 
87
87
  <li><a href="../../RubyBreaker/Broken.html">RubyBreaker::Broken</a>
88
88
 
89
- <li><a href="../../RubyBreaker/Broken/BrokenEigen.html">RubyBreaker::Broken::BrokenEigen</a>
90
-
91
89
  <li><a href="../../RubyBreaker/Context.html">RubyBreaker::Context</a>
92
90
 
93
91
  <li><a href="../../RubyBreaker/Errors.html">RubyBreaker::Errors</a>
@@ -104,12 +102,12 @@
104
102
 
105
103
  <li><a href="../../RubyBreaker/Errors/UserError.html">RubyBreaker::Errors::UserError</a>
106
104
 
107
- <li><a href="../../RubyBreaker/Main.html">RubyBreaker::Main</a>
108
-
109
105
  <li><a href="../../RubyBreaker/ObjectPosition.html">RubyBreaker::ObjectPosition</a>
110
106
 
111
107
  <li><a href="../../RubyBreaker/Position.html">RubyBreaker::Position</a>
112
108
 
109
+ <li><a href="../../RubyBreaker/RDocSupport.html">RubyBreaker::RDocSupport</a>
110
+
113
111
  <li><a href="../../RubyBreaker/RubyTypeUtils.html">RubyBreaker::RubyTypeUtils</a>
114
112
 
115
113
  <li><a href="../../RubyBreaker/Runtime.html">RubyBreaker::Runtime</a>
@@ -130,15 +128,11 @@
130
128
 
131
129
  <li><a href="../../RubyBreaker/Runtime/Pluggable.html">RubyBreaker::Runtime::Pluggable</a>
132
130
 
133
- <li><a href="../../RubyBreaker/Runtime/TypePlaceholder.html">RubyBreaker::Runtime::TypePlaceholder</a>
134
-
135
131
  <li><a href="../../RubyBreaker/Runtime/TypeSigParser.html">RubyBreaker::Runtime::TypeSigParser</a>
136
132
 
137
- <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
138
-
139
- <li><a href="../../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
133
+ <li><a href="../../RubyBreaker/Runtime/TypeSigUnparser.html">RubyBreaker::Runtime::TypeSigUnparser</a>
140
134
 
141
- <li><a href="../../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
135
+ <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
142
136
 
143
137
  <li><a href="../../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
144
138
 
@@ -176,6 +170,18 @@
176
170
 
177
171
  <li><a href="../../RubyBreaker/Util.html">RubyBreaker::Util</a>
178
172
 
173
+ <li><a href="../../Test.html">Test</a>
174
+
175
+ <li><a href="../../Test/Unit.html">Test::Unit</a>
176
+
177
+ <li><a href="../../Test/Unit/TestCase.html">Test::Unit::TestCase</a>
178
+
179
+ <li><a href="../../Rake.html">Rake</a>
180
+
181
+ <li><a href="../../Rake/RubyBreakerTestTask.html">Rake::RubyBreakerTestTask</a>
182
+
183
+ <li><a href="../../Kernel.html">Kernel</a>
184
+
179
185
  <li><a href="../../Object.html">Object</a>
180
186
 
181
187
  </ul>
@@ -84,8 +84,6 @@
84
84
 
85
85
  <li><a href="../../RubyBreaker/Broken.html">RubyBreaker::Broken</a>
86
86
 
87
- <li><a href="../../RubyBreaker/Broken/BrokenEigen.html">RubyBreaker::Broken::BrokenEigen</a>
88
-
89
87
  <li><a href="../../RubyBreaker/Context.html">RubyBreaker::Context</a>
90
88
 
91
89
  <li><a href="../../RubyBreaker/Errors.html">RubyBreaker::Errors</a>
@@ -102,12 +100,12 @@
102
100
 
103
101
  <li><a href="../../RubyBreaker/Errors/UserError.html">RubyBreaker::Errors::UserError</a>
104
102
 
105
- <li><a href="../../RubyBreaker/Main.html">RubyBreaker::Main</a>
106
-
107
103
  <li><a href="../../RubyBreaker/ObjectPosition.html">RubyBreaker::ObjectPosition</a>
108
104
 
109
105
  <li><a href="../../RubyBreaker/Position.html">RubyBreaker::Position</a>
110
106
 
107
+ <li><a href="../../RubyBreaker/RDocSupport.html">RubyBreaker::RDocSupport</a>
108
+
111
109
  <li><a href="../../RubyBreaker/RubyTypeUtils.html">RubyBreaker::RubyTypeUtils</a>
112
110
 
113
111
  <li><a href="../../RubyBreaker/Runtime.html">RubyBreaker::Runtime</a>
@@ -128,15 +126,11 @@
128
126
 
129
127
  <li><a href="../../RubyBreaker/Runtime/Pluggable.html">RubyBreaker::Runtime::Pluggable</a>
130
128
 
131
- <li><a href="../../RubyBreaker/Runtime/TypePlaceholder.html">RubyBreaker::Runtime::TypePlaceholder</a>
132
-
133
129
  <li><a href="../../RubyBreaker/Runtime/TypeSigParser.html">RubyBreaker::Runtime::TypeSigParser</a>
134
130
 
135
- <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
136
-
137
- <li><a href="../../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
131
+ <li><a href="../../RubyBreaker/Runtime/TypeSigUnparser.html">RubyBreaker::Runtime::TypeSigUnparser</a>
138
132
 
139
- <li><a href="../../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
133
+ <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
140
134
 
141
135
  <li><a href="../../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
142
136
 
@@ -174,6 +168,18 @@
174
168
 
175
169
  <li><a href="../../RubyBreaker/Util.html">RubyBreaker::Util</a>
176
170
 
171
+ <li><a href="../../Test.html">Test</a>
172
+
173
+ <li><a href="../../Test/Unit.html">Test::Unit</a>
174
+
175
+ <li><a href="../../Test/Unit/TestCase.html">Test::Unit::TestCase</a>
176
+
177
+ <li><a href="../../Rake.html">Rake</a>
178
+
179
+ <li><a href="../../Rake/RubyBreakerTestTask.html">Rake::RubyBreakerTestTask</a>
180
+
181
+ <li><a href="../../Kernel.html">Kernel</a>
182
+
177
183
  <li><a href="../../Object.html">Object</a>
178
184
 
179
185
  </ul>
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
6
6
 
7
- <title>module RubyBreaker::Runtime::TypesigUnparser - RDoc Documentation</title>
7
+ <title>module RubyBreaker::Runtime::TypeSigUnparser - RDoc Documentation</title>
8
8
 
9
9
  <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet">
10
10
 
@@ -100,8 +100,6 @@
100
100
 
101
101
  <li><a href="../../RubyBreaker/Broken.html">RubyBreaker::Broken</a>
102
102
 
103
- <li><a href="../../RubyBreaker/Broken/BrokenEigen.html">RubyBreaker::Broken::BrokenEigen</a>
104
-
105
103
  <li><a href="../../RubyBreaker/Context.html">RubyBreaker::Context</a>
106
104
 
107
105
  <li><a href="../../RubyBreaker/Errors.html">RubyBreaker::Errors</a>
@@ -118,12 +116,12 @@
118
116
 
119
117
  <li><a href="../../RubyBreaker/Errors/UserError.html">RubyBreaker::Errors::UserError</a>
120
118
 
121
- <li><a href="../../RubyBreaker/Main.html">RubyBreaker::Main</a>
122
-
123
119
  <li><a href="../../RubyBreaker/ObjectPosition.html">RubyBreaker::ObjectPosition</a>
124
120
 
125
121
  <li><a href="../../RubyBreaker/Position.html">RubyBreaker::Position</a>
126
122
 
123
+ <li><a href="../../RubyBreaker/RDocSupport.html">RubyBreaker::RDocSupport</a>
124
+
127
125
  <li><a href="../../RubyBreaker/RubyTypeUtils.html">RubyBreaker::RubyTypeUtils</a>
128
126
 
129
127
  <li><a href="../../RubyBreaker/Runtime.html">RubyBreaker::Runtime</a>
@@ -144,15 +142,11 @@
144
142
 
145
143
  <li><a href="../../RubyBreaker/Runtime/Pluggable.html">RubyBreaker::Runtime::Pluggable</a>
146
144
 
147
- <li><a href="../../RubyBreaker/Runtime/TypePlaceholder.html">RubyBreaker::Runtime::TypePlaceholder</a>
148
-
149
145
  <li><a href="../../RubyBreaker/Runtime/TypeSigParser.html">RubyBreaker::Runtime::TypeSigParser</a>
150
146
 
151
- <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
152
-
153
- <li><a href="../../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
147
+ <li><a href="../../RubyBreaker/Runtime/TypeSigUnparser.html">RubyBreaker::Runtime::TypeSigUnparser</a>
154
148
 
155
- <li><a href="../../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
149
+ <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
156
150
 
157
151
  <li><a href="../../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
158
152
 
@@ -190,6 +184,18 @@
190
184
 
191
185
  <li><a href="../../RubyBreaker/Util.html">RubyBreaker::Util</a>
192
186
 
187
+ <li><a href="../../Test.html">Test</a>
188
+
189
+ <li><a href="../../Test/Unit.html">Test::Unit</a>
190
+
191
+ <li><a href="../../Test/Unit/TestCase.html">Test::Unit::TestCase</a>
192
+
193
+ <li><a href="../../Rake.html">Rake</a>
194
+
195
+ <li><a href="../../Rake/RubyBreakerTestTask.html">Rake::RubyBreakerTestTask</a>
196
+
197
+ <li><a href="../../Kernel.html">Kernel</a>
198
+
193
199
  <li><a href="../../Object.html">Object</a>
194
200
 
195
201
  </ul>
@@ -199,7 +205,7 @@
199
205
  </nav>
200
206
 
201
207
  <div id="documentation">
202
- <h1 class="module">module RubyBreaker::Runtime::TypesigUnparser</h1>
208
+ <h1 class="module">module RubyBreaker::Runtime::TypeSigUnparser</h1>
203
209
 
204
210
  <div id="description" class="description">
205
211
 
@@ -317,9 +323,6 @@
317
323
 
318
324
  <span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-node">&quot;#{keyword} #{mod.to_s}&quot;</span>, <span class="ruby-value">80</span>)
319
325
  <span class="ruby-identifier">pp</span>.<span class="ruby-identifier">nest</span>(<span class="ruby-value">2</span>) <span class="ruby-keyword">do</span>
320
- <span class="ruby-identifier">pp</span>.<span class="ruby-identifier">breakable</span>(<span class="ruby-string">&quot;&quot;</span>)
321
- <span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-string">&quot;include RubyBreaker::Broken&quot;</span>, <span class="ruby-value">80</span>)
322
-
323
326
  <span class="ruby-comment"># See if there is any class method to show</span>
324
327
  <span class="ruby-identifier">eigen</span> = <span class="ruby-constant">Runtime</span>.<span class="ruby-identifier">eigen_class</span>(<span class="ruby-identifier">mod</span>)
325
328
  <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span><span class="ruby-constant">DOCUMENTED</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">eigen</span>)
@@ -371,7 +374,7 @@ during runtime.</p>
371
374
 
372
375
 
373
376
  <div class="method-source-code" id="unparse-source">
374
- <pre><span class="ruby-comment"># File lib/rubybreaker/runtime/typesig_unparser.rb, line 84</span>
377
+ <pre><span class="ruby-comment"># File lib/rubybreaker/runtime/typesig_unparser.rb, line 81</span>
375
378
  <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">unparse</span>(<span class="ruby-identifier">mod</span>, <span class="ruby-identifier">opts</span>={})
376
379
  <span class="ruby-identifier">str</span> = <span class="ruby-string">&quot;&quot;</span>
377
380
  <span class="ruby-identifier">pp</span> = <span class="ruby-constant">PrettyPrint</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">str</span>)
@@ -114,8 +114,6 @@
114
114
 
115
115
  <li><a href="../../RubyBreaker/Broken.html">RubyBreaker::Broken</a>
116
116
 
117
- <li><a href="../../RubyBreaker/Broken/BrokenEigen.html">RubyBreaker::Broken::BrokenEigen</a>
118
-
119
117
  <li><a href="../../RubyBreaker/Context.html">RubyBreaker::Context</a>
120
118
 
121
119
  <li><a href="../../RubyBreaker/Errors.html">RubyBreaker::Errors</a>
@@ -132,12 +130,12 @@
132
130
 
133
131
  <li><a href="../../RubyBreaker/Errors/UserError.html">RubyBreaker::Errors::UserError</a>
134
132
 
135
- <li><a href="../../RubyBreaker/Main.html">RubyBreaker::Main</a>
136
-
137
133
  <li><a href="../../RubyBreaker/ObjectPosition.html">RubyBreaker::ObjectPosition</a>
138
134
 
139
135
  <li><a href="../../RubyBreaker/Position.html">RubyBreaker::Position</a>
140
136
 
137
+ <li><a href="../../RubyBreaker/RDocSupport.html">RubyBreaker::RDocSupport</a>
138
+
141
139
  <li><a href="../../RubyBreaker/RubyTypeUtils.html">RubyBreaker::RubyTypeUtils</a>
142
140
 
143
141
  <li><a href="../../RubyBreaker/Runtime.html">RubyBreaker::Runtime</a>
@@ -158,15 +156,11 @@
158
156
 
159
157
  <li><a href="../../RubyBreaker/Runtime/Pluggable.html">RubyBreaker::Runtime::Pluggable</a>
160
158
 
161
- <li><a href="../../RubyBreaker/Runtime/TypePlaceholder.html">RubyBreaker::Runtime::TypePlaceholder</a>
162
-
163
159
  <li><a href="../../RubyBreaker/Runtime/TypeSigParser.html">RubyBreaker::Runtime::TypeSigParser</a>
164
160
 
165
- <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
166
-
167
- <li><a href="../../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
161
+ <li><a href="../../RubyBreaker/Runtime/TypeSigUnparser.html">RubyBreaker::Runtime::TypeSigUnparser</a>
168
162
 
169
- <li><a href="../../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
163
+ <li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
170
164
 
171
165
  <li><a href="../../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
172
166
 
@@ -204,6 +198,18 @@
204
198
 
205
199
  <li><a href="../../RubyBreaker/Util.html">RubyBreaker::Util</a>
206
200
 
201
+ <li><a href="../../Test.html">Test</a>
202
+
203
+ <li><a href="../../Test/Unit.html">Test::Unit</a>
204
+
205
+ <li><a href="../../Test/Unit/TestCase.html">Test::Unit::TestCase</a>
206
+
207
+ <li><a href="../../Rake.html">Rake</a>
208
+
209
+ <li><a href="../../Rake/RubyBreakerTestTask.html">Rake::RubyBreakerTestTask</a>
210
+
211
+ <li><a href="../../Kernel.html">Kernel</a>
212
+
207
213
  <li><a href="../../Object.html">Object</a>
208
214
 
209
215
  </ul>
@@ -273,10 +279,8 @@ information.</p>
273
279
 
274
280
  <span class="ruby-constant">RubyBreaker</span>.<span class="ruby-identifier">log</span>(<span class="ruby-node">&quot;In module monitor_after #{meth_name}&quot;</span>)
275
281
 
276
- <span class="ruby-identifier">meth_type_map</span> = <span class="ruby-constant">Breakable</span><span class="ruby-operator">::</span><span class="ruby-constant">TYPE_PLACEHOLDER_MAP</span>[<span class="ruby-identifier">mod</span>].<span class="ruby-identifier">meth_type_map</span>
277
-
278
282
  <span class="ruby-comment"># Compute the least upper bound</span>
279
- <span class="ruby-identifier">lub</span>(<span class="ruby-identifier">obj</span>, <span class="ruby-identifier">meth_type_map</span>,<span class="ruby-identifier">meth_name</span>,<span class="ruby-identifier">retval</span>,*<span class="ruby-identifier">args</span>,&amp;<span class="ruby-identifier">blk</span>)
283
+ <span class="ruby-identifier">lub</span>(<span class="ruby-identifier">obj</span>, <span class="ruby-constant">TYPE_MAP</span>[<span class="ruby-identifier">mod</span>],<span class="ruby-identifier">meth_name</span>,<span class="ruby-identifier">retval</span>,*<span class="ruby-identifier">args</span>,&amp;<span class="ruby-identifier">blk</span>)
280
284
 
281
285
  <span class="ruby-keyword">if</span> <span class="ruby-identifier">obj</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">retval</span>
282
286
  <span class="ruby-comment"># It is possible that the method receiver is a wrapped object if</span>
@@ -320,7 +324,7 @@ argument with the object wrapper.</p>
320
324
  <span class="ruby-identifier">is_obj_mod</span> = (<span class="ruby-identifier">obj</span>.<span class="ruby-identifier">class</span> <span class="ruby-operator">==</span> <span class="ruby-constant">Class</span> <span class="ruby-keyword">or</span> <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">class</span> <span class="ruby-operator">==</span> <span class="ruby-constant">Module</span>)
321
325
  <span class="ruby-identifier">mod</span> = <span class="ruby-identifier">is_obj_mod</span> <span class="ruby-operator">?</span> <span class="ruby-constant">Runtime</span>.<span class="ruby-identifier">eigen_class</span>(<span class="ruby-identifier">obj</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">class</span>
322
326
 
323
- <span class="ruby-identifier">meth_type_map</span> = <span class="ruby-constant">Breakable</span><span class="ruby-operator">::</span><span class="ruby-constant">TYPE_PLACEHOLDER_MAP</span>[<span class="ruby-identifier">mod</span>].<span class="ruby-identifier">meth_type_map</span>
327
+ <span class="ruby-identifier">meth_type_map</span> = <span class="ruby-constant">TYPE_MAP</span>[<span class="ruby-identifier">mod</span>]
324
328
 
325
329
  <span class="ruby-comment"># Let's take things out of the MethodInfo object</span>
326
330
  <span class="ruby-identifier">meth_name</span> = <span class="ruby-identifier">meth_info</span>.<span class="ruby-identifier">meth_name</span>