rubybreaker 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/NEWS +4 -0
- data/README.md +33 -19
- data/Rakefile +31 -13
- data/TODO +6 -4
- data/VERSION +1 -1
- data/bin/rubybreaker +0 -1
- data/lib/rubybreaker/debug/debug.rb +1 -1
- data/lib/rubybreaker/runtime/typesig_unparser.rb +96 -0
- data/lib/rubybreaker/runtime.rb +1 -0
- data/lib/rubybreaker/test/rspec.rb +15 -0
- data/lib/rubybreaker/test/testcase.rb +4 -4
- data/lib/rubybreaker/test.rb +1 -0
- data/lib/rubybreaker/type/type_grammar.treetop +5 -4
- data/lib/rubybreaker/type/type_unparser.rb +69 -25
- data/lib/rubybreaker.rb +9 -77
- data/test/integrated/tc_namespace.rb +56 -0
- data/test/ts_integrated.rb +1 -0
- data/test/ts_rspec.rb +31 -0
- data/test/ts_type.rb +2 -0
- data/test/type/tc_camelize.rb +24 -0
- data/test/type/tc_namespace.rb +25 -0
- data/test/type/tc_unparser.rb +31 -32
- data/webpage/index.html +34 -19
- data/webpage/rdoc/Object.html +308 -0
- data/webpage/rdoc/RubyBreaker/Breakable.html +5 -1
- data/webpage/rdoc/RubyBreaker/Broken/BrokenEigen.html +5 -1
- data/webpage/rdoc/RubyBreaker/Broken.html +5 -1
- data/webpage/rdoc/RubyBreaker/Context.html +5 -1
- data/webpage/rdoc/RubyBreaker/Errors/InternalError.html +4 -0
- data/webpage/rdoc/RubyBreaker/Errors/InvalidSubtypeCheck.html +4 -0
- data/webpage/rdoc/RubyBreaker/Errors/InvalidTypeConstruction.html +4 -0
- data/webpage/rdoc/RubyBreaker/Errors/SubtypeFailure.html +4 -0
- data/webpage/rdoc/RubyBreaker/Errors/TypeError.html +4 -0
- data/webpage/rdoc/RubyBreaker/Errors/UserError.html +4 -0
- data/webpage/rdoc/RubyBreaker/Errors.html +4 -0
- data/webpage/rdoc/RubyBreaker/Main.html +17 -132
- data/webpage/rdoc/RubyBreaker/ObjectPosition.html +5 -1
- data/webpage/rdoc/RubyBreaker/Position.html +5 -1
- data/webpage/rdoc/RubyBreaker/RubyTypeUtils.html +4 -0
- data/webpage/rdoc/RubyBreaker/Runtime/Inspector.html +4 -0
- data/webpage/rdoc/RubyBreaker/Runtime/MethodInfo.html +5 -1
- data/webpage/rdoc/RubyBreaker/Runtime/Monitor.html +5 -1
- data/webpage/rdoc/RubyBreaker/Runtime/MonitorInstaller.html +4 -0
- data/webpage/rdoc/RubyBreaker/Runtime/MonitorSwitch.html +5 -1
- data/webpage/rdoc/RubyBreaker/Runtime/MonitorUtils.html +4 -0
- data/webpage/rdoc/RubyBreaker/Runtime/ObjectWrapper.html +4 -0
- data/webpage/rdoc/RubyBreaker/Runtime/Pluggable.html +4 -0
- data/webpage/rdoc/RubyBreaker/Runtime/TypePlaceholder.html +5 -1
- data/webpage/rdoc/RubyBreaker/Runtime/TypeSigParser.html +4 -0
- data/webpage/rdoc/RubyBreaker/Runtime/TypeSystem.html +5 -1
- data/webpage/rdoc/RubyBreaker/Runtime/TypesigUnparser.html +404 -0
- data/webpage/rdoc/RubyBreaker/Runtime.html +5 -0
- data/webpage/rdoc/RubyBreaker/TestCase.html +47 -43
- data/webpage/rdoc/RubyBreaker/TypeComparer.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/AnyType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/BlockType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/DuckType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/FusionType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/MethodListType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/MethodType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/NilType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/NominalType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/OptionalType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/OrType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/SelfType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs/Type.html +11 -6
- data/webpage/rdoc/RubyBreaker/TypeDefs/VarLengthType.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeDefs.html +4 -0
- data/webpage/rdoc/RubyBreaker/TypeUnparser.html +15 -7
- data/webpage/rdoc/RubyBreaker/Typing.html +4 -0
- data/webpage/rdoc/RubyBreaker/Util.html +4 -0
- data/webpage/rdoc/RubyBreaker.html +6 -6
- data/webpage/rdoc/created.rid +9 -7
- data/webpage/rdoc/index.html +4 -0
- data/webpage/rdoc/js/search_index.js +1 -1
- data/webpage/rdoc/table_of_contents.html +36 -24
- metadata +13 -7
|
@@ -0,0 +1,404 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
|
|
3
|
+
<html>
|
|
4
|
+
<head>
|
|
5
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
|
6
|
+
|
|
7
|
+
<title>module RubyBreaker::Runtime::TypesigUnparser - RDoc Documentation</title>
|
|
8
|
+
|
|
9
|
+
<link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet">
|
|
10
|
+
|
|
11
|
+
<script type="text/javascript">
|
|
12
|
+
var rdoc_rel_prefix = "../../";
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
|
|
16
|
+
<script type="text/javascript" charset="utf-8" src="../../js/navigation.js"></script>
|
|
17
|
+
<script type="text/javascript" charset="utf-8" src="../../js/search_index.js"></script>
|
|
18
|
+
<script type="text/javascript" charset="utf-8" src="../../js/search.js"></script>
|
|
19
|
+
<script type="text/javascript" charset="utf-8" src="../../js/searcher.js"></script>
|
|
20
|
+
<script type="text/javascript" charset="utf-8" src="../../js/darkfish.js"></script>
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
<body id="top" class="module">
|
|
24
|
+
<nav id="metadata">
|
|
25
|
+
<nav id="home-section" class="section">
|
|
26
|
+
<h3 class="section-header">
|
|
27
|
+
<a href="../../index.html">Home</a>
|
|
28
|
+
<a href="../../table_of_contents.html#classes">Classes</a>
|
|
29
|
+
<a href="../../table_of_contents.html#methods">Methods</a>
|
|
30
|
+
</h3>
|
|
31
|
+
</nav>
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
<nav id="search-section" class="section project-section" class="initially-hidden">
|
|
35
|
+
<form action="#" method="get" accept-charset="utf-8">
|
|
36
|
+
<h3 class="section-header">
|
|
37
|
+
<input type="text" name="search" placeholder="Search" id="search-field"
|
|
38
|
+
title="Type to search, Up and Down to navigate, Enter to load">
|
|
39
|
+
</h3>
|
|
40
|
+
</form>
|
|
41
|
+
|
|
42
|
+
<ul id="search-results" class="initially-hidden"></ul>
|
|
43
|
+
</nav>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
<div id="file-metadata">
|
|
47
|
+
<nav id="file-list-section" class="section">
|
|
48
|
+
<h3 class="section-header">Defined In</h3>
|
|
49
|
+
<ul>
|
|
50
|
+
<li>lib/rubybreaker/runtime/typesig_unparser.rb
|
|
51
|
+
</ul>
|
|
52
|
+
</nav>
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
</div>
|
|
56
|
+
|
|
57
|
+
<div id="class-metadata">
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
<!-- Included Modules -->
|
|
61
|
+
<nav id="includes-section" class="section">
|
|
62
|
+
<h3 class="section-header">Included Modules</h3>
|
|
63
|
+
|
|
64
|
+
<ul class="link-list">
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
<li><a class="include" href="../TypeDefs.html">RubyBreaker::TypeDefs</a>
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
</ul>
|
|
71
|
+
</nav>
|
|
72
|
+
|
|
73
|
+
<!-- Method Quickref -->
|
|
74
|
+
<nav id="method-list-section" class="section">
|
|
75
|
+
<h3 class="section-header">Methods</h3>
|
|
76
|
+
|
|
77
|
+
<ul class="link-list">
|
|
78
|
+
|
|
79
|
+
<li><a href="#method-c-pp_methods">::pp_methods</a>
|
|
80
|
+
|
|
81
|
+
<li><a href="#method-c-pp_module">::pp_module</a>
|
|
82
|
+
|
|
83
|
+
<li><a href="#method-c-unparse">::unparse</a>
|
|
84
|
+
|
|
85
|
+
</ul>
|
|
86
|
+
</nav>
|
|
87
|
+
|
|
88
|
+
</div>
|
|
89
|
+
|
|
90
|
+
<div id="project-metadata">
|
|
91
|
+
|
|
92
|
+
<nav id="classindex-section" class="section project-section">
|
|
93
|
+
<h3 class="section-header">Class and Module Index</h3>
|
|
94
|
+
|
|
95
|
+
<ul class="link-list">
|
|
96
|
+
|
|
97
|
+
<li><a href="../../RubyBreaker.html">RubyBreaker</a>
|
|
98
|
+
|
|
99
|
+
<li><a href="../../RubyBreaker/Breakable.html">RubyBreaker::Breakable</a>
|
|
100
|
+
|
|
101
|
+
<li><a href="../../RubyBreaker/Broken.html">RubyBreaker::Broken</a>
|
|
102
|
+
|
|
103
|
+
<li><a href="../../RubyBreaker/Broken/BrokenEigen.html">RubyBreaker::Broken::BrokenEigen</a>
|
|
104
|
+
|
|
105
|
+
<li><a href="../../RubyBreaker/Context.html">RubyBreaker::Context</a>
|
|
106
|
+
|
|
107
|
+
<li><a href="../../RubyBreaker/Errors.html">RubyBreaker::Errors</a>
|
|
108
|
+
|
|
109
|
+
<li><a href="../../RubyBreaker/Errors/InternalError.html">RubyBreaker::Errors::InternalError</a>
|
|
110
|
+
|
|
111
|
+
<li><a href="../../RubyBreaker/Errors/InvalidSubtypeCheck.html">RubyBreaker::Errors::InvalidSubtypeCheck</a>
|
|
112
|
+
|
|
113
|
+
<li><a href="../../RubyBreaker/Errors/InvalidTypeConstruction.html">RubyBreaker::Errors::InvalidTypeConstruction</a>
|
|
114
|
+
|
|
115
|
+
<li><a href="../../RubyBreaker/Errors/SubtypeFailure.html">RubyBreaker::Errors::SubtypeFailure</a>
|
|
116
|
+
|
|
117
|
+
<li><a href="../../RubyBreaker/Errors/TypeError.html">RubyBreaker::Errors::TypeError</a>
|
|
118
|
+
|
|
119
|
+
<li><a href="../../RubyBreaker/Errors/UserError.html">RubyBreaker::Errors::UserError</a>
|
|
120
|
+
|
|
121
|
+
<li><a href="../../RubyBreaker/Main.html">RubyBreaker::Main</a>
|
|
122
|
+
|
|
123
|
+
<li><a href="../../RubyBreaker/ObjectPosition.html">RubyBreaker::ObjectPosition</a>
|
|
124
|
+
|
|
125
|
+
<li><a href="../../RubyBreaker/Position.html">RubyBreaker::Position</a>
|
|
126
|
+
|
|
127
|
+
<li><a href="../../RubyBreaker/RubyTypeUtils.html">RubyBreaker::RubyTypeUtils</a>
|
|
128
|
+
|
|
129
|
+
<li><a href="../../RubyBreaker/Runtime.html">RubyBreaker::Runtime</a>
|
|
130
|
+
|
|
131
|
+
<li><a href="../../RubyBreaker/Runtime/Inspector.html">RubyBreaker::Runtime::Inspector</a>
|
|
132
|
+
|
|
133
|
+
<li><a href="../../RubyBreaker/Runtime/MethodInfo.html">RubyBreaker::Runtime::MethodInfo</a>
|
|
134
|
+
|
|
135
|
+
<li><a href="../../RubyBreaker/Runtime/Monitor.html">RubyBreaker::Runtime::Monitor</a>
|
|
136
|
+
|
|
137
|
+
<li><a href="../../RubyBreaker/Runtime/MonitorInstaller.html">RubyBreaker::Runtime::MonitorInstaller</a>
|
|
138
|
+
|
|
139
|
+
<li><a href="../../RubyBreaker/Runtime/MonitorSwitch.html">RubyBreaker::Runtime::MonitorSwitch</a>
|
|
140
|
+
|
|
141
|
+
<li><a href="../../RubyBreaker/Runtime/MonitorUtils.html">RubyBreaker::Runtime::MonitorUtils</a>
|
|
142
|
+
|
|
143
|
+
<li><a href="../../RubyBreaker/Runtime/ObjectWrapper.html">RubyBreaker::Runtime::ObjectWrapper</a>
|
|
144
|
+
|
|
145
|
+
<li><a href="../../RubyBreaker/Runtime/Pluggable.html">RubyBreaker::Runtime::Pluggable</a>
|
|
146
|
+
|
|
147
|
+
<li><a href="../../RubyBreaker/Runtime/TypePlaceholder.html">RubyBreaker::Runtime::TypePlaceholder</a>
|
|
148
|
+
|
|
149
|
+
<li><a href="../../RubyBreaker/Runtime/TypeSigParser.html">RubyBreaker::Runtime::TypeSigParser</a>
|
|
150
|
+
|
|
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>
|
|
154
|
+
|
|
155
|
+
<li><a href="../../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
|
|
156
|
+
|
|
157
|
+
<li><a href="../../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
|
|
158
|
+
|
|
159
|
+
<li><a href="../../RubyBreaker/TypeDefs.html">RubyBreaker::TypeDefs</a>
|
|
160
|
+
|
|
161
|
+
<li><a href="../../RubyBreaker/TypeDefs/AnyType.html">RubyBreaker::TypeDefs::AnyType</a>
|
|
162
|
+
|
|
163
|
+
<li><a href="../../RubyBreaker/TypeDefs/BlockType.html">RubyBreaker::TypeDefs::BlockType</a>
|
|
164
|
+
|
|
165
|
+
<li><a href="../../RubyBreaker/TypeDefs/DuckType.html">RubyBreaker::TypeDefs::DuckType</a>
|
|
166
|
+
|
|
167
|
+
<li><a href="../../RubyBreaker/TypeDefs/FusionType.html">RubyBreaker::TypeDefs::FusionType</a>
|
|
168
|
+
|
|
169
|
+
<li><a href="../../RubyBreaker/TypeDefs/MethodListType.html">RubyBreaker::TypeDefs::MethodListType</a>
|
|
170
|
+
|
|
171
|
+
<li><a href="../../RubyBreaker/TypeDefs/MethodType.html">RubyBreaker::TypeDefs::MethodType</a>
|
|
172
|
+
|
|
173
|
+
<li><a href="../../RubyBreaker/TypeDefs/NilType.html">RubyBreaker::TypeDefs::NilType</a>
|
|
174
|
+
|
|
175
|
+
<li><a href="../../RubyBreaker/TypeDefs/NominalType.html">RubyBreaker::TypeDefs::NominalType</a>
|
|
176
|
+
|
|
177
|
+
<li><a href="../../RubyBreaker/TypeDefs/OptionalType.html">RubyBreaker::TypeDefs::OptionalType</a>
|
|
178
|
+
|
|
179
|
+
<li><a href="../../RubyBreaker/TypeDefs/OrType.html">RubyBreaker::TypeDefs::OrType</a>
|
|
180
|
+
|
|
181
|
+
<li><a href="../../RubyBreaker/TypeDefs/SelfType.html">RubyBreaker::TypeDefs::SelfType</a>
|
|
182
|
+
|
|
183
|
+
<li><a href="../../RubyBreaker/TypeDefs/Type.html">RubyBreaker::TypeDefs::Type</a>
|
|
184
|
+
|
|
185
|
+
<li><a href="../../RubyBreaker/TypeDefs/VarLengthType.html">RubyBreaker::TypeDefs::VarLengthType</a>
|
|
186
|
+
|
|
187
|
+
<li><a href="../../RubyBreaker/TypeUnparser.html">RubyBreaker::TypeUnparser</a>
|
|
188
|
+
|
|
189
|
+
<li><a href="../../RubyBreaker/Typing.html">RubyBreaker::Typing</a>
|
|
190
|
+
|
|
191
|
+
<li><a href="../../RubyBreaker/Util.html">RubyBreaker::Util</a>
|
|
192
|
+
|
|
193
|
+
<li><a href="../../Object.html">Object</a>
|
|
194
|
+
|
|
195
|
+
</ul>
|
|
196
|
+
</nav>
|
|
197
|
+
|
|
198
|
+
</div>
|
|
199
|
+
</nav>
|
|
200
|
+
|
|
201
|
+
<div id="documentation">
|
|
202
|
+
<h1 class="module">module RubyBreaker::Runtime::TypesigUnparser</h1>
|
|
203
|
+
|
|
204
|
+
<div id="description" class="description">
|
|
205
|
+
|
|
206
|
+
<p>This module handles unparsing type signatures.</p>
|
|
207
|
+
|
|
208
|
+
</div><!-- description -->
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
<section id="5Buntitled-5D" class="documentation-section">
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
<!-- Constants -->
|
|
220
|
+
<section id="constants-list" class="section">
|
|
221
|
+
<h3 class="section-header">Constants</h3>
|
|
222
|
+
<dl>
|
|
223
|
+
|
|
224
|
+
<dt id="DOCUMENTED">DOCUMENTED
|
|
225
|
+
|
|
226
|
+
<dd class="description"><p>This array lists monitored modules/classes that are outputed.</p>
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
</dl>
|
|
230
|
+
</section>
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
<!-- Methods -->
|
|
236
|
+
|
|
237
|
+
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
|
238
|
+
<h3 class="section-header">Public Class Methods</h3>
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
<div id="method-c-pp_methods" class="method-detail ">
|
|
242
|
+
|
|
243
|
+
<div class="method-heading">
|
|
244
|
+
<span class="method-name">pp_methods</span><span
|
|
245
|
+
class="method-args">(pp, meth_type_map, opts={})</span>
|
|
246
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
247
|
+
</div>
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
<div class="method-description">
|
|
251
|
+
|
|
252
|
+
<p>Pretty prints type information for methods</p>
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
<div class="method-source-code" id="pp_methods-source">
|
|
257
|
+
<pre><span class="ruby-comment"># File lib/rubybreaker/runtime/typesig_unparser.rb, line 17</span>
|
|
258
|
+
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">pp_methods</span>(<span class="ruby-identifier">pp</span>, <span class="ruby-identifier">meth_type_map</span>, <span class="ruby-identifier">opts</span>={})
|
|
259
|
+
<span class="ruby-identifier">meth_type_map</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">meth_name</span>, <span class="ruby-identifier">meth_type</span><span class="ruby-operator">|</span>
|
|
260
|
+
<span class="ruby-keyword">case</span> <span class="ruby-identifier">meth_type</span>
|
|
261
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">MethodType</span>
|
|
262
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">breakable</span>()
|
|
263
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-string">"typesig(\""</span>)
|
|
264
|
+
<span class="ruby-constant">TypeUnparser</span>.<span class="ruby-identifier">unparse_pp</span>(<span class="ruby-identifier">pp</span>, <span class="ruby-identifier">meth_type</span>, <span class="ruby-identifier">opts</span>)
|
|
265
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-string">"\")"</span>)
|
|
266
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">MethodListType</span>
|
|
267
|
+
<span class="ruby-identifier">meth_type</span>.<span class="ruby-identifier">types</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">real_meth_type</span><span class="ruby-operator">|</span>
|
|
268
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">breakable</span>()
|
|
269
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-string">"typesig(\""</span>)
|
|
270
|
+
<span class="ruby-constant">TypeUnparser</span>.<span class="ruby-identifier">unparse_pp</span>(<span class="ruby-identifier">pp</span>, <span class="ruby-identifier">real_meth_type</span>, <span class="ruby-identifier">opts</span>)
|
|
271
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-string">"\")"</span>)
|
|
272
|
+
}
|
|
273
|
+
<span class="ruby-keyword">else</span>
|
|
274
|
+
<span class="ruby-comment"># Can't happen</span>
|
|
275
|
+
<span class="ruby-keyword">end</span>
|
|
276
|
+
}
|
|
277
|
+
<span class="ruby-keyword">end</span></pre>
|
|
278
|
+
</div><!-- pp_methods-source -->
|
|
279
|
+
|
|
280
|
+
</div>
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
</div><!-- pp_methods-method -->
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
<div id="method-c-pp_module" class="method-detail ">
|
|
289
|
+
|
|
290
|
+
<div class="method-heading">
|
|
291
|
+
<span class="method-name">pp_module</span><span
|
|
292
|
+
class="method-args">(pp, mod, opts={})</span>
|
|
293
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
294
|
+
</div>
|
|
295
|
+
|
|
296
|
+
|
|
297
|
+
<div class="method-description">
|
|
298
|
+
|
|
299
|
+
<p>Pretty prints type information for the module/class</p>
|
|
300
|
+
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
<div class="method-source-code" id="pp_module-source">
|
|
304
|
+
<pre><span class="ruby-comment"># File lib/rubybreaker/runtime/typesig_unparser.rb, line 39</span>
|
|
305
|
+
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">pp_module</span>(<span class="ruby-identifier">pp</span>, <span class="ruby-identifier">mod</span>, <span class="ruby-identifier">opts</span>={})
|
|
306
|
+
<span class="ruby-comment"># Skip it if we already have seen it</span>
|
|
307
|
+
<span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-constant">DOCUMENTED</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">mod</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">to_s</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-node">"#<"</span>
|
|
308
|
+
|
|
309
|
+
<span class="ruby-comment"># Remember that we have documented this module/class</span>
|
|
310
|
+
<span class="ruby-constant">DOCUMENTED</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">mod</span>
|
|
311
|
+
|
|
312
|
+
<span class="ruby-comment"># Get the method type mapping</span>
|
|
313
|
+
<span class="ruby-identifier">meth_type_map</span> = <span class="ruby-constant">Inspector</span>.<span class="ruby-identifier">inspect_all</span>(<span class="ruby-identifier">mod</span>)
|
|
314
|
+
|
|
315
|
+
<span class="ruby-comment"># Check if this module is a class</span>
|
|
316
|
+
<span class="ruby-identifier">keyword</span> = <span class="ruby-identifier">mod</span>.<span class="ruby-identifier">instance_of?</span>(<span class="ruby-constant">Class</span>) <span class="ruby-operator">?</span> <span class="ruby-string">"class"</span> <span class="ruby-operator">:</span> <span class="ruby-string">"module"</span>
|
|
317
|
+
|
|
318
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-node">"#{keyword} #{mod.to_s}"</span>, <span class="ruby-value">80</span>)
|
|
319
|
+
<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">""</span>)
|
|
321
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-string">"include RubyBreaker::Broken"</span>, <span class="ruby-value">80</span>)
|
|
322
|
+
|
|
323
|
+
<span class="ruby-comment"># See if there is any class method to show</span>
|
|
324
|
+
<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
|
+
<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>)
|
|
326
|
+
<span class="ruby-constant">DOCUMENTED</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">eigen</span>
|
|
327
|
+
<span class="ruby-identifier">eigen_meth_type_map</span> = <span class="ruby-constant">Inspector</span>.<span class="ruby-identifier">inspect_all</span>(<span class="ruby-identifier">eigen</span>)
|
|
328
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">eigen_meth_type_map</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
329
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">breakable</span>()
|
|
330
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-string">"class << self"</span>, <span class="ruby-value">80</span>)
|
|
331
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">nest</span>(<span class="ruby-value">2</span>) <span class="ruby-keyword">do</span>
|
|
332
|
+
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">pp_methods</span>(<span class="ruby-identifier">pp</span>, <span class="ruby-identifier">eigen_meth_type_map</span>, <span class="ruby-value">:namespace</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">eigen</span>)
|
|
333
|
+
<span class="ruby-keyword">end</span>
|
|
334
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">breakable</span>()
|
|
335
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-string">"end"</span>, <span class="ruby-value">80</span>)
|
|
336
|
+
<span class="ruby-keyword">end</span>
|
|
337
|
+
<span class="ruby-keyword">end</span>
|
|
338
|
+
|
|
339
|
+
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">pp_methods</span>(<span class="ruby-identifier">pp</span>, <span class="ruby-identifier">meth_type_map</span>, <span class="ruby-value">:namespace</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">mod</span>)
|
|
340
|
+
|
|
341
|
+
<span class="ruby-keyword">end</span>
|
|
342
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">breakable</span>()
|
|
343
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">text</span>(<span class="ruby-string">"end"</span>,<span class="ruby-value">80</span>)
|
|
344
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">breakable</span>()
|
|
345
|
+
<span class="ruby-keyword">end</span></pre>
|
|
346
|
+
</div><!-- pp_module-source -->
|
|
347
|
+
|
|
348
|
+
</div>
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
</div><!-- pp_module-method -->
|
|
354
|
+
|
|
355
|
+
|
|
356
|
+
<div id="method-c-unparse" class="method-detail ">
|
|
357
|
+
|
|
358
|
+
<div class="method-heading">
|
|
359
|
+
<span class="method-name">unparse</span><span
|
|
360
|
+
class="method-args">(mod, opts={})</span>
|
|
361
|
+
<span class="method-click-advice">click to toggle source</span>
|
|
362
|
+
</div>
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
<div class="method-description">
|
|
366
|
+
|
|
367
|
+
<p>This method unparses the type information in the specified module,
|
|
368
|
+
displaying one or more type signatures for each method that is monitored
|
|
369
|
+
during runtime.</p>
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
<div class="method-source-code" id="unparse-source">
|
|
374
|
+
<pre><span class="ruby-comment"># File lib/rubybreaker/runtime/typesig_unparser.rb, line 84</span>
|
|
375
|
+
<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
|
+
<span class="ruby-identifier">str</span> = <span class="ruby-string">""</span>
|
|
377
|
+
<span class="ruby-identifier">pp</span> = <span class="ruby-constant">PrettyPrint</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">str</span>)
|
|
378
|
+
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">pp_module</span>(<span class="ruby-identifier">pp</span>, <span class="ruby-identifier">mod</span>, <span class="ruby-identifier">opts</span>)
|
|
379
|
+
<span class="ruby-identifier">pp</span>.<span class="ruby-identifier">flush</span>
|
|
380
|
+
<span class="ruby-keyword">return</span> <span class="ruby-identifier">str</span>
|
|
381
|
+
<span class="ruby-keyword">end</span></pre>
|
|
382
|
+
</div><!-- unparse-source -->
|
|
383
|
+
|
|
384
|
+
</div>
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
</div><!-- unparse-method -->
|
|
390
|
+
|
|
391
|
+
|
|
392
|
+
</section><!-- public-class-method-details -->
|
|
393
|
+
|
|
394
|
+
</section><!-- 5Buntitled-5D -->
|
|
395
|
+
|
|
396
|
+
</div><!-- documentation -->
|
|
397
|
+
|
|
398
|
+
|
|
399
|
+
<footer id="validator-badges">
|
|
400
|
+
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
|
401
|
+
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
|
|
402
|
+
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
|
403
|
+
</footer>
|
|
404
|
+
|
|
@@ -55,6 +55,7 @@
|
|
|
55
55
|
<li>lib/rubybreaker/runtime/type_placeholder.rb
|
|
56
56
|
<li>lib/rubybreaker/runtime/type_system.rb
|
|
57
57
|
<li>lib/rubybreaker/runtime/typesig_parser.rb
|
|
58
|
+
<li>lib/rubybreaker/runtime/typesig_unparser.rb
|
|
58
59
|
<li>lib/rubybreaker/runtime/util.rb
|
|
59
60
|
</ul>
|
|
60
61
|
</nav>
|
|
@@ -132,6 +133,8 @@
|
|
|
132
133
|
|
|
133
134
|
<li><a href="../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
|
|
134
135
|
|
|
136
|
+
<li><a href="../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
|
|
137
|
+
|
|
135
138
|
<li><a href="../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
|
|
136
139
|
|
|
137
140
|
<li><a href="../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
|
|
@@ -170,6 +173,8 @@
|
|
|
170
173
|
|
|
171
174
|
<li><a href="../RubyBreaker/Util.html">RubyBreaker::Util</a>
|
|
172
175
|
|
|
176
|
+
<li><a href="../Object.html">Object</a>
|
|
177
|
+
|
|
173
178
|
</ul>
|
|
174
179
|
</nav>
|
|
175
180
|
|
|
@@ -64,11 +64,11 @@
|
|
|
64
64
|
|
|
65
65
|
<ul class="link-list">
|
|
66
66
|
|
|
67
|
-
<li><a href="#method-c-
|
|
67
|
+
<li><a href="#method-c-__rubybreaker_setup">::__rubybreaker_setup</a>
|
|
68
68
|
|
|
69
|
-
<li><a href="#method-c-
|
|
69
|
+
<li><a href="#method-c-__rubybreaker_teardown">::__rubybreaker_teardown</a>
|
|
70
70
|
|
|
71
|
-
<li><a href="#method-c-
|
|
71
|
+
<li><a href="#method-c-included">::included</a>
|
|
72
72
|
|
|
73
73
|
</ul>
|
|
74
74
|
</nav>
|
|
@@ -138,6 +138,8 @@
|
|
|
138
138
|
|
|
139
139
|
<li><a href="../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
|
|
140
140
|
|
|
141
|
+
<li><a href="../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
|
|
142
|
+
|
|
141
143
|
<li><a href="../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
|
|
142
144
|
|
|
143
145
|
<li><a href="../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
|
|
@@ -176,6 +178,8 @@
|
|
|
176
178
|
|
|
177
179
|
<li><a href="../RubyBreaker/Util.html">RubyBreaker::Util</a>
|
|
178
180
|
|
|
181
|
+
<li><a href="../Object.html">Object</a>
|
|
182
|
+
|
|
179
183
|
</ul>
|
|
180
184
|
</nav>
|
|
181
185
|
|
|
@@ -210,11 +214,11 @@ href="TestCase.html">TestCase</a> class.</p>
|
|
|
210
214
|
<h3 class="section-header">Public Class Methods</h3>
|
|
211
215
|
|
|
212
216
|
|
|
213
|
-
<div id="method-c-
|
|
217
|
+
<div id="method-c-__rubybreaker_setup" class="method-detail ">
|
|
214
218
|
|
|
215
219
|
<div class="method-heading">
|
|
216
|
-
<span class="method-name">
|
|
217
|
-
class="method-args">(
|
|
220
|
+
<span class="method-name">__rubybreaker_setup</span><span
|
|
221
|
+
class="method-args">()</span>
|
|
218
222
|
<span class="method-click-advice">click to toggle source</span>
|
|
219
223
|
</div>
|
|
220
224
|
|
|
@@ -225,37 +229,25 @@ href="TestCase.html">TestCase</a> class.</p>
|
|
|
225
229
|
|
|
226
230
|
|
|
227
231
|
|
|
228
|
-
<div class="method-source-code" id="
|
|
229
|
-
<pre><span class="ruby-comment"># File lib/rubybreaker/test/testcase.rb, line
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
alias :__run :run
|
|
235
|
-
|
|
236
|
-
def run(*args,&blk)
|
|
237
|
-
RubyBreaker::TestCase.setup()
|
|
238
|
-
__run(*args,&blk)
|
|
239
|
-
RubyBreaker::TestCase.teardown()
|
|
240
|
-
end
|
|
241
|
-
|
|
242
|
-
"</span>
|
|
243
|
-
|
|
244
|
-
<span class="ruby-keyword">end</span></pre>
|
|
245
|
-
</div><!-- included-source -->
|
|
232
|
+
<div class="method-source-code" id="__rubybreaker_setup-source">
|
|
233
|
+
<pre><span class="ruby-comment"># File lib/rubybreaker/test/testcase.rb, line 12</span>
|
|
234
|
+
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">__rubybreaker_setup</span>()
|
|
235
|
+
<span class="ruby-constant">Main</span>.<span class="ruby-identifier">setup</span>()
|
|
236
|
+
<span class="ruby-keyword">end</span></pre>
|
|
237
|
+
</div><!-- __rubybreaker_setup-source -->
|
|
246
238
|
|
|
247
239
|
</div>
|
|
248
240
|
|
|
249
241
|
|
|
250
242
|
|
|
251
243
|
|
|
252
|
-
</div><!--
|
|
244
|
+
</div><!-- __rubybreaker_setup-method -->
|
|
253
245
|
|
|
254
246
|
|
|
255
|
-
<div id="method-c-
|
|
247
|
+
<div id="method-c-__rubybreaker_teardown" class="method-detail ">
|
|
256
248
|
|
|
257
249
|
<div class="method-heading">
|
|
258
|
-
<span class="method-name">
|
|
250
|
+
<span class="method-name">__rubybreaker_teardown</span><span
|
|
259
251
|
class="method-args">()</span>
|
|
260
252
|
<span class="method-click-advice">click to toggle source</span>
|
|
261
253
|
</div>
|
|
@@ -267,26 +259,26 @@ href="TestCase.html">TestCase</a> class.</p>
|
|
|
267
259
|
|
|
268
260
|
|
|
269
261
|
|
|
270
|
-
<div class="method-source-code" id="
|
|
271
|
-
<pre><span class="ruby-comment"># File lib/rubybreaker/test/testcase.rb, line
|
|
272
|
-
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">
|
|
273
|
-
<span class="ruby-
|
|
262
|
+
<div class="method-source-code" id="__rubybreaker_teardown-source">
|
|
263
|
+
<pre><span class="ruby-comment"># File lib/rubybreaker/test/testcase.rb, line 16</span>
|
|
264
|
+
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">__rubybreaker_teardown</span>()
|
|
265
|
+
<span class="ruby-comment"># Main.output()</span>
|
|
274
266
|
<span class="ruby-keyword">end</span></pre>
|
|
275
|
-
</div><!--
|
|
267
|
+
</div><!-- __rubybreaker_teardown-source -->
|
|
276
268
|
|
|
277
269
|
</div>
|
|
278
270
|
|
|
279
271
|
|
|
280
272
|
|
|
281
273
|
|
|
282
|
-
</div><!--
|
|
274
|
+
</div><!-- __rubybreaker_teardown-method -->
|
|
283
275
|
|
|
284
276
|
|
|
285
|
-
<div id="method-c-
|
|
277
|
+
<div id="method-c-included" class="method-detail ">
|
|
286
278
|
|
|
287
279
|
<div class="method-heading">
|
|
288
|
-
<span class="method-name">
|
|
289
|
-
class="method-args">()</span>
|
|
280
|
+
<span class="method-name">included</span><span
|
|
281
|
+
class="method-args">(mod)</span>
|
|
290
282
|
<span class="method-click-advice">click to toggle source</span>
|
|
291
283
|
</div>
|
|
292
284
|
|
|
@@ -297,19 +289,31 @@ href="TestCase.html">TestCase</a> class.</p>
|
|
|
297
289
|
|
|
298
290
|
|
|
299
291
|
|
|
300
|
-
<div class="method-source-code" id="
|
|
301
|
-
<pre><span class="ruby-comment"># File lib/rubybreaker/test/testcase.rb, line
|
|
302
|
-
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">
|
|
303
|
-
|
|
304
|
-
<span class="ruby-
|
|
305
|
-
|
|
292
|
+
<div class="method-source-code" id="included-source">
|
|
293
|
+
<pre><span class="ruby-comment"># File lib/rubybreaker/test/testcase.rb, line 20</span>
|
|
294
|
+
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">included</span>(<span class="ruby-identifier">mod</span>)
|
|
295
|
+
|
|
296
|
+
<span class="ruby-comment"># hack to insert RubyBreaker's own setup and teardown methods</span>
|
|
297
|
+
<span class="ruby-identifier">mod</span>.<span class="ruby-identifier">module_eval</span> <span class="ruby-string">"
|
|
298
|
+
alias :__run :run
|
|
299
|
+
|
|
300
|
+
def run(*args,&blk)
|
|
301
|
+
RubyBreaker::TestCase.__rubybreaker_setup()
|
|
302
|
+
__run(*args,&blk)
|
|
303
|
+
RubyBreaker::TestCase.__rubybreaker_teardown()
|
|
304
|
+
end
|
|
305
|
+
|
|
306
|
+
"</span>
|
|
307
|
+
|
|
308
|
+
<span class="ruby-keyword">end</span></pre>
|
|
309
|
+
</div><!-- included-source -->
|
|
306
310
|
|
|
307
311
|
</div>
|
|
308
312
|
|
|
309
313
|
|
|
310
314
|
|
|
311
315
|
|
|
312
|
-
</div><!--
|
|
316
|
+
</div><!-- included-method -->
|
|
313
317
|
|
|
314
318
|
|
|
315
319
|
</section><!-- public-class-method-details -->
|
|
@@ -146,6 +146,8 @@
|
|
|
146
146
|
|
|
147
147
|
<li><a href="../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
|
|
148
148
|
|
|
149
|
+
<li><a href="../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
|
|
150
|
+
|
|
149
151
|
<li><a href="../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
|
|
150
152
|
|
|
151
153
|
<li><a href="../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
|
|
@@ -184,6 +186,8 @@
|
|
|
184
186
|
|
|
185
187
|
<li><a href="../RubyBreaker/Util.html">RubyBreaker::Util</a>
|
|
186
188
|
|
|
189
|
+
<li><a href="../Object.html">Object</a>
|
|
190
|
+
|
|
187
191
|
</ul>
|
|
188
192
|
</nav>
|
|
189
193
|
|
|
@@ -140,6 +140,8 @@
|
|
|
140
140
|
|
|
141
141
|
<li><a href="../../RubyBreaker/Runtime/TypeSystem.html">RubyBreaker::Runtime::TypeSystem</a>
|
|
142
142
|
|
|
143
|
+
<li><a href="../../RubyBreaker/Runtime/TypesigUnparser.html">RubyBreaker::Runtime::TypesigUnparser</a>
|
|
144
|
+
|
|
143
145
|
<li><a href="../../RubyBreaker/TestCase.html">RubyBreaker::TestCase</a>
|
|
144
146
|
|
|
145
147
|
<li><a href="../../RubyBreaker/TypeComparer.html">RubyBreaker::TypeComparer</a>
|
|
@@ -178,6 +180,8 @@
|
|
|
178
180
|
|
|
179
181
|
<li><a href="../../RubyBreaker/Util.html">RubyBreaker::Util</a>
|
|
180
182
|
|
|
183
|
+
<li><a href="../../Object.html">Object</a>
|
|
184
|
+
|
|
181
185
|
</ul>
|
|
182
186
|
</nav>
|
|
183
187
|
|