ovto 0.5.0 → 0.6.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +3 -0
  3. data/CHANGELOG.md +14 -2
  4. data/Gemfile +2 -3
  5. data/Gemfile.lock +23 -27
  6. data/book/SUMMARY.md +2 -0
  7. data/book/api/actions.md +1 -1
  8. data/book/api/middleware.md +99 -0
  9. data/book/api/pure_component.md +3 -0
  10. data/docs/api/Array.html +190 -0
  11. data/docs/api/Hash.html +196 -0
  12. data/docs/api/Ovto/Actions.html +128 -40
  13. data/docs/api/Ovto/App.html +254 -40
  14. data/docs/api/Ovto/Component/MoreThanOneNode.html +6 -6
  15. data/docs/api/Ovto/Component.html +96 -29
  16. data/docs/api/Ovto/Middleware/Actions.html +428 -0
  17. data/docs/api/Ovto/Middleware/Base.html +605 -0
  18. data/docs/api/Ovto/Middleware/Component.html +354 -0
  19. data/docs/api/Ovto/Middleware.html +286 -0
  20. data/docs/api/Ovto/PureComponent/StateIsNotAvailable.html +6 -6
  21. data/docs/api/Ovto/PureComponent.html +11 -11
  22. data/docs/api/Ovto/Runtime.html +7 -7
  23. data/docs/api/Ovto/State/MissingValue.html +6 -6
  24. data/docs/api/Ovto/State/{UnknownKey.html → UnknownStateKey.html} +11 -11
  25. data/docs/api/Ovto/State.html +59 -43
  26. data/docs/api/Ovto/WiredActionSet.html +636 -0
  27. data/docs/api/Ovto/WiredActions.html +78 -35
  28. data/docs/api/Ovto.html +223 -30
  29. data/docs/api/_index.html +77 -11
  30. data/docs/api/actions.html +29 -3
  31. data/docs/api/app.html +28 -2
  32. data/docs/api/class_list.html +3 -3
  33. data/docs/api/component.html +30 -4
  34. data/docs/api/css/style.css +3 -2
  35. data/docs/api/fetch.html +30 -4
  36. data/docs/api/file.README.html +76 -78
  37. data/docs/api/file_list.html +2 -2
  38. data/docs/api/frames.html +2 -2
  39. data/docs/api/index.html +76 -78
  40. data/docs/api/js/app.js +14 -3
  41. data/docs/api/method_list.html +303 -31
  42. data/docs/api/middleware.html +498 -0
  43. data/docs/api/pure_component.html +428 -0
  44. data/docs/api/state.html +28 -2
  45. data/docs/api/top-level-namespace.html +11 -9
  46. data/docs/guides/debugging.html +28 -2
  47. data/docs/guides/development.html +28 -2
  48. data/docs/guides/install.html +28 -2
  49. data/docs/guides/tutorial.html +28 -2
  50. data/docs/index.html +28 -2
  51. data/docs/search_index.json +1 -1
  52. data/examples/sinatra/Gemfile +2 -0
  53. data/examples/sinatra/Gemfile.lock +32 -30
  54. data/examples/sinatra/app.rb +1 -4
  55. data/examples/sinatra/config.ru +6 -6
  56. data/examples/static/Gemfile.lock +9 -9
  57. data/lib/ovto/actions.rb +11 -0
  58. data/lib/ovto/app.rb +37 -13
  59. data/lib/ovto/component.rb +130 -67
  60. data/lib/ovto/middleware.rb +121 -0
  61. data/lib/ovto/pure_component.rb +1 -1
  62. data/lib/ovto/state.rb +13 -5
  63. data/lib/ovto/version.rb +1 -1
  64. data/lib/ovto/wired_action_set.rb +40 -0
  65. data/lib/ovto/wired_actions.rb +49 -11
  66. data/lib/ovto.rb +26 -0
  67. data/ovto.gemspec +1 -1
  68. metadata +21 -11
  69. data/docs/api/pure_component.md +0 -27
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d4b96687f3ed63679cd1390c78a55ccc070bcd696fae6ea398869deb48ec89e1
4
- data.tar.gz: 80bc3fb5dd02ddb6f49d7cb30d79189512a6a970dc5a48131819b3f976765cb4
3
+ metadata.gz: b2ddaa76c727e4560af0bf287745897dae5188f764cae396a2f648fa675e7414
4
+ data.tar.gz: 9d3b11c75753e7603ae9b280235e0aa0fc0bb2893489f6ea388721de7dcd6ede
5
5
  SHA512:
6
- metadata.gz: e5111857b2b9072efdf43e006fef98c06eede869d333ec1fa95171d708c6299f7ac2a2aa84aee2e81219e0e8e02be3b2a3039da908796ea0640e2f43b1c2e8d9
7
- data.tar.gz: d99fbee3030cc11b4b6186f4b61d134fdb7c983a62d4dab37a115c1fe021f41a0ed0f7e7b1081ac00292c893e90bf4f0934bfa27f4eb83551c4fc0127b90e776
6
+ metadata.gz: 9cd38d6c1f29d3a0f4221bda5c5c390ddf83507e2f6265d6257b95bb72fe096e01b179659784d640aea75f425f56be8438b7bb84fc75f15e59239d465a208736
7
+ data.tar.gz: 6516be94dced6512bfaeca2e9b6ce4315d241f459d4d4c24340f90ab07458ea259c37ecd4a169c0794e4ace7f824c43dc1aa27aed6109d54ca153af62a27b277
data/.gitmodules CHANGED
@@ -0,0 +1,3 @@
1
+ [submodule "opal-rspec"]
2
+ path = opal-rspec
3
+ url = https://github.com/opal/opal-rspec.git
data/CHANGELOG.md CHANGED
@@ -1,4 +1,17 @@
1
- ## HEAD
1
+ ## v0.6.2 (2021-10-22)
2
+
3
+ - Loosen requirement of version of thor gem (allow 1.x)
4
+
5
+ ## v0.6.1 (2021-10-22)
6
+
7
+ - Update Opal to 1.2
8
+
9
+ ## v0.6.0 (2020-02-29)
10
+
11
+ - feat: Ovto::Middleware (#18)
12
+ - Experimental. API may change during 0.6.x
13
+ - feat(State): default_proc (#17)
14
+ - feat(o): `o SubComp do ...end` now passes the block to `SubComp#render` (#16)
2
15
 
3
16
  ## v0.5.0 (2019-12-22)
4
17
 
@@ -20,7 +33,6 @@ New features
20
33
  Example:
21
34
 
22
35
  o 'div', `{nodeName: ....}`
23
-
24
36
 
25
37
  ## v0.3.0 (2018-12-24)
26
38
 
data/Gemfile CHANGED
@@ -1,7 +1,6 @@
1
1
  source "https://rubygems.org"
2
- gem 'opal', '>= 1.0.0'
3
- gem 'c_lexer'
4
- gem 'opal-rspec', '>= 0.8.0.alpha1'
2
+ gem 'opal', '>= 1.2.0'
3
+ gem 'opal-rspec', '>= 0.8.0.alpha3'
5
4
  gem 'opal-sprockets'
6
5
  gem 'rake'
7
6
  gem 'ovto', path: '.'
data/Gemfile.lock CHANGED
@@ -1,52 +1,48 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ovto (0.5.0)
4
+ ovto (0.6.2)
5
5
  opal (>= 0.11, < 2)
6
6
  rack (~> 2.0)
7
- thor (~> 0.20)
7
+ thor (>= 0.20)
8
8
 
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- ast (2.4.0)
13
- c_lexer (2.6.4.1.1)
14
- ast (~> 2.4.0)
15
- parser (= 2.6.4.1)
16
- concurrent-ruby (1.1.5)
17
- opal (1.0.2)
12
+ ast (2.4.2)
13
+ concurrent-ruby (1.1.9)
14
+ opal (1.2.0)
18
15
  ast (>= 2.3.0)
19
- parser (~> 2.6)
20
- opal-rspec (0.8.0.alpha2)
21
- opal (>= 0.11, < 1.1)
22
- opal-sprockets
23
- rake (~> 12.0)
24
- opal-sprockets (0.4.8.1.0.3.7)
25
- opal (~> 1.0.0)
26
- sprockets (~> 3.7)
16
+ parser (~> 3.0)
17
+ opal-rspec (0.8.0.alpha3)
18
+ opal (>= 1.0.0, < 2.0)
19
+ opal-sprockets (< 2.0)
20
+ rake (>= 12.0)
21
+ opal-sprockets (1.0.2)
22
+ opal (>= 1.0, < 2.0)
23
+ sprockets (~> 4.0)
27
24
  tilt (>= 1.4)
28
- parser (2.6.4.1)
29
- ast (~> 2.4.0)
30
- rack (2.0.8)
31
- rake (12.3.3)
32
- sprockets (3.7.2)
25
+ parser (3.0.2.0)
26
+ ast (~> 2.4.1)
27
+ rack (2.2.3)
28
+ rake (13.0.6)
29
+ sprockets (4.0.2)
33
30
  concurrent-ruby (~> 1.0)
34
31
  rack (> 1, < 3)
35
- thor (0.20.3)
32
+ thor (1.1.0)
36
33
  tilt (2.0.10)
37
- yard (0.9.20)
34
+ yard (0.9.26)
38
35
 
39
36
  PLATFORMS
40
37
  ruby
41
38
 
42
39
  DEPENDENCIES
43
- c_lexer
44
- opal (>= 1.0.0)
45
- opal-rspec (>= 0.8.0.alpha1)
40
+ opal (>= 1.2.0)
41
+ opal-rspec (>= 0.8.0.alpha3)
46
42
  opal-sprockets
47
43
  ovto!
48
44
  rake
49
45
  yard
50
46
 
51
47
  BUNDLED WITH
52
- 2.0.2
48
+ 2.2.22
data/book/SUMMARY.md CHANGED
@@ -7,6 +7,8 @@
7
7
  - [Ovto::State](api/state.md)
8
8
  - [Ovto::Actions](api/actions.md)
9
9
  - [Ovto::Component](api/component.md)
10
+ - [Ovto::PureComponent](api/pure_component.md)
11
+ - [Ovto::Middleware](api/middleware.md)
10
12
  - [Ovto.fetch](api/fetch.md)
11
13
  - Guides
12
14
  - [Debugging](guides/debugging.md)
data/book/api/actions.md CHANGED
@@ -15,7 +15,7 @@ require 'ovto'
15
15
 
16
16
  class MyApp < Ovto::App
17
17
  class State < Ovto::State
18
- item :count, 0
18
+ item :count, default: 0
19
19
  end
20
20
 
21
21
  class Actions < Ovto::Actions
@@ -0,0 +1,99 @@
1
+ # Ovto::Middleware
2
+
3
+ When you are making a big app with Ovto, you may want to extract
4
+ certain parts which are independent from the app. Ovto::Middleware is
5
+ for such cases.
6
+
7
+ - A middleware has its own namespace of state and actions
8
+ - that is, you don't need to add prefixes to the names of states and actions of a middleware.
9
+
10
+ ## Example
11
+
12
+ ```rb
13
+ # 1. Middleware name must be valid as a method name in Ruby
14
+ class MyMiddleware < Ovto::Middleware("my_middleware")
15
+ def setup
16
+ # Called on app startup
17
+ end
18
+
19
+ # 2. Make a subclass of MyMiddleware's State
20
+ class State < MyMiddleware::State
21
+ item :count, default: 0
22
+ end
23
+
24
+ # 3. Make a subclass of MyMiddleware's Actions
25
+ class Actions < MyMiddleware::Actions
26
+ def increment(by:)
27
+ return {count: state.count + by}
28
+ end
29
+ end
30
+
31
+ # 4. Make a subclass of MyMiddleware's Component
32
+ class SomeComponent < MyMiddleware::Component
33
+ def render
34
+ o 'div' do
35
+ o 'span', state.count
36
+ o 'button', onclick: ->{ actions.increment(by: 1) }
37
+ end
38
+ end
39
+ end
40
+ end
41
+
42
+ class MyApp < Ovto::App
43
+ # 5. Declare middlewares to use
44
+ use MyMiddleware
45
+
46
+ class State < Ovto::State; end
47
+ class Actions < Ovto::Actions; end
48
+
49
+ class MainComponent < Ovto::Component
50
+ def render
51
+ o 'div.counter' do
52
+ o MyMiddleware::SomeComponent
53
+ end
54
+ end
55
+ end
56
+ end
57
+ ```
58
+
59
+ ## Advanced
60
+
61
+ ### Getting middlware state from app
62
+
63
+ ```rb
64
+ class MyApp < Ovto::App
65
+ def MainComponent < Ovto::Component
66
+ def render
67
+ o 'span', state._middlewares.middleware1.some_state
68
+ end
69
+ end
70
+ end
71
+ ```
72
+
73
+ ### Calling middlware action from app
74
+
75
+ ```rb
76
+ class MyApp < Ovto::App
77
+ # From actions
78
+ def Actions < Ovto::Actions
79
+ def some_action
80
+ actions.middleware1.some_action()
81
+ end
82
+ end
83
+
84
+ # From component
85
+ def MainComponent < Ovto::Component
86
+ def render
87
+ o 'button', onclick: ->{ actions.middleware1.some_action() }
88
+ end
89
+ end
90
+ end
91
+ ```
92
+
93
+ ### Using a middleware from another middleware
94
+
95
+ ```rb
96
+ class Middleware1 < Ovto::Middleware("middleware1")
97
+ use Middleware2
98
+ end
99
+ ```
@@ -2,6 +2,9 @@
2
2
 
3
3
  It almost the same as `Ovto::Component`, but it caches the `render` method calling with arguments of the method.
4
4
 
5
+ ## When to use PureComponent?
6
+
7
+ Use it when your app is slow and need more speed.
5
8
 
6
9
  ## Cache strategy
7
10
 
@@ -0,0 +1,190 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: Array
8
+
9
+ &mdash; Documentation by YARD 0.9.26
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" />
14
+
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" />
16
+
17
+ <script type="text/javascript">
18
+ pathId = "Array";
19
+ relpath = '';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="_index.html">Index (A)</a> &raquo;
40
+
41
+
42
+ <span class="title">Array</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Class: Array
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName">Object</span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">Array</li>
78
+
79
+ </ul>
80
+ <a href="#" class="inheritanceTree">show all</a>
81
+
82
+ </dd>
83
+ </dl>
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+ <dl>
96
+ <dt>Defined in:</dt>
97
+ <dd>lib/mighty_inspect.rb</dd>
98
+ </dl>
99
+
100
+ </div>
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+ <h2>
111
+ Instance Method Summary
112
+ <small><a href="#" class="summary_toggle">collapse</a></small>
113
+ </h2>
114
+
115
+ <ul class="summary">
116
+
117
+ <li class="public ">
118
+ <span class="summary_signature">
119
+
120
+ <a href="#mighty_inspect-instance_method" title="#mighty_inspect (instance method)">#<strong>mighty_inspect</strong> &#x21d2; Object </a>
121
+
122
+
123
+
124
+ </span>
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+ <span class="summary_desc"><div class='inline'></div></span>
135
+
136
+ </li>
137
+
138
+
139
+ </ul>
140
+
141
+
142
+
143
+
144
+ <div id="instance_method_details" class="method_details_list">
145
+ <h2>Instance Method Details</h2>
146
+
147
+
148
+ <div class="method_details first">
149
+ <h3 class="signature first" id="mighty_inspect-instance_method">
150
+
151
+ #<strong>mighty_inspect</strong> &#x21d2; <tt>Object</tt>
152
+
153
+
154
+
155
+
156
+
157
+ </h3><table class="source_code">
158
+ <tr>
159
+ <td>
160
+ <pre class="lines">
161
+
162
+
163
+ 18
164
+ 19
165
+ 20</pre>
166
+ </td>
167
+ <td>
168
+ <pre class="code"><span class="info file"># File 'lib/mighty_inspect.rb', line 18</span>
169
+
170
+ <span class='kw'>def</span> <span class='id identifier rubyid_mighty_inspect'>mighty_inspect</span>
171
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>[</span><span class='tstring_end'>&quot;</span></span> <span class='op'>+</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_x'>x</span><span class='op'>|</span> <span class='const'><span class='object_link'><a href="MightyInspect.html" title="MightyInspect (module)">MightyInspect</a></span></span><span class='period'>.</span><span class='id identifier rubyid_mighty_inspect'><span class='object_link'><a href="MightyInspect.html#mighty_inspect-class_method" title="MightyInspect.mighty_inspect (method)">mighty_inspect</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_x'>x</span><span class='rparen'>)</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>, </span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>]</span><span class='tstring_end'>&quot;</span></span>
172
+ <span class='kw'>end</span></pre>
173
+ </td>
174
+ </tr>
175
+ </table>
176
+ </div>
177
+
178
+ </div>
179
+
180
+ </div>
181
+
182
+ <div id="footer">
183
+ Generated on Fri Oct 22 08:18:18 2021 by
184
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
185
+ 0.9.26 (ruby-3.0.2).
186
+ </div>
187
+
188
+ </div>
189
+ </body>
190
+ </html>
@@ -0,0 +1,196 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Class: Hash
8
+
9
+ &mdash; Documentation by YARD 0.9.26
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" />
14
+
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" />
16
+
17
+ <script type="text/javascript">
18
+ pathId = "Hash";
19
+ relpath = '';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="_index.html">Index (H)</a> &raquo;
40
+
41
+
42
+ <span class="title">Hash</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Class: Hash
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+ <dl>
70
+ <dt>Inherits:</dt>
71
+ <dd>
72
+ <span class="inheritName">Object</span>
73
+
74
+ <ul class="fullTree">
75
+ <li>Object</li>
76
+
77
+ <li class="next">Hash</li>
78
+
79
+ </ul>
80
+ <a href="#" class="inheritanceTree">show all</a>
81
+
82
+ </dd>
83
+ </dl>
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+ <dl>
96
+ <dt>Defined in:</dt>
97
+ <dd>lib/mighty_inspect.rb</dd>
98
+ </dl>
99
+
100
+ </div>
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+ <h2>
111
+ Instance Method Summary
112
+ <small><a href="#" class="summary_toggle">collapse</a></small>
113
+ </h2>
114
+
115
+ <ul class="summary">
116
+
117
+ <li class="public ">
118
+ <span class="summary_signature">
119
+
120
+ <a href="#mighty_inspect-instance_method" title="#mighty_inspect (instance method)">#<strong>mighty_inspect</strong> &#x21d2; Object </a>
121
+
122
+
123
+
124
+ </span>
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+ <span class="summary_desc"><div class='inline'></div></span>
135
+
136
+ </li>
137
+
138
+
139
+ </ul>
140
+
141
+
142
+
143
+
144
+ <div id="instance_method_details" class="method_details_list">
145
+ <h2>Instance Method Details</h2>
146
+
147
+
148
+ <div class="method_details first">
149
+ <h3 class="signature first" id="mighty_inspect-instance_method">
150
+
151
+ #<strong>mighty_inspect</strong> &#x21d2; <tt>Object</tt>
152
+
153
+
154
+
155
+
156
+
157
+ </h3><table class="source_code">
158
+ <tr>
159
+ <td>
160
+ <pre class="lines">
161
+
162
+
163
+ 24
164
+ 25
165
+ 26
166
+ 27
167
+ 28
168
+ 29</pre>
169
+ </td>
170
+ <td>
171
+ <pre class="code"><span class="info file"># File 'lib/mighty_inspect.rb', line 24</span>
172
+
173
+ <span class='kw'>def</span> <span class='id identifier rubyid_mighty_inspect'>mighty_inspect</span>
174
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>{</span><span class='tstring_end'>&quot;</span></span> <span class='op'>+</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
175
+ <span class='const'><span class='object_link'><a href="MightyInspect.html" title="MightyInspect (module)">MightyInspect</a></span></span><span class='period'>.</span><span class='id identifier rubyid_mighty_inspect'><span class='object_link'><a href="MightyInspect.html#mighty_inspect-class_method" title="MightyInspect.mighty_inspect (method)">mighty_inspect</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_k'>k</span><span class='rparen'>)</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> =&gt; </span><span class='tstring_end'>&quot;</span></span> <span class='op'>+</span>
176
+ <span class='const'><span class='object_link'><a href="MightyInspect.html" title="MightyInspect (module)">MightyInspect</a></span></span><span class='period'>.</span><span class='id identifier rubyid_mighty_inspect'><span class='object_link'><a href="MightyInspect.html#mighty_inspect-class_method" title="MightyInspect.mighty_inspect (method)">mighty_inspect</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span>
177
+ <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>, </span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>}</span><span class='tstring_end'>&quot;</span></span>
178
+ <span class='kw'>end</span></pre>
179
+ </td>
180
+ </tr>
181
+ </table>
182
+ </div>
183
+
184
+ </div>
185
+
186
+ </div>
187
+
188
+ <div id="footer">
189
+ Generated on Fri Oct 22 08:18:18 2021 by
190
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
191
+ 0.9.26 (ruby-3.0.2).
192
+ </div>
193
+
194
+ </div>
195
+ </body>
196
+ </html>