ovto 0.4.1 → 0.6.1
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.
- checksums.yaml +4 -4
- data/.gitignore +1 -1
- data/.gitmodules +3 -0
- data/CHANGELOG.md +15 -2
- data/Gemfile +2 -2
- data/Gemfile.lock +23 -27
- data/README.md +2 -2
- data/book/SUMMARY.md +3 -1
- data/book/api/actions.md +1 -1
- data/book/api/fetch.md +3 -3
- data/book/api/middleware.md +99 -0
- data/book/api/pure_component.md +30 -0
- data/book/guides/install.md +76 -0
- data/book/guides/tutorial.md +3 -3
- data/book/ovtologo.png +0 -0
- data/docs/api/Array.html +190 -0
- data/docs/api/Hash.html +196 -0
- data/docs/api/Ovto/Actions.html +132 -40
- data/docs/api/Ovto/App.html +254 -40
- data/docs/api/Ovto/Component/MoreThanOneNode.html +6 -6
- data/docs/api/Ovto/Component.html +102 -27
- data/docs/api/Ovto/Middleware/Actions.html +428 -0
- data/docs/api/Ovto/Middleware/Base.html +606 -0
- data/docs/api/Ovto/Middleware/Component.html +355 -0
- data/docs/api/Ovto/Middleware.html +288 -0
- data/docs/api/Ovto/PureComponent/StateIsNotAvailable.html +124 -0
- data/docs/api/Ovto/PureComponent.html +368 -0
- data/docs/api/Ovto/Runtime.html +7 -7
- data/docs/api/Ovto/State/MissingValue.html +6 -6
- data/docs/api/Ovto/State/{UnknownKey.html → UnknownStateKey.html} +11 -11
- data/docs/api/Ovto/State.html +59 -43
- data/docs/api/Ovto/WiredActionSet.html +636 -0
- data/docs/api/Ovto/WiredActions.html +78 -35
- data/docs/api/Ovto.html +226 -29
- data/docs/api/_index.html +99 -11
- data/docs/api/actions.html +36 -10
- data/docs/api/app.html +35 -9
- data/docs/api/class_list.html +3 -3
- data/docs/api/component.html +37 -11
- data/docs/api/css/style.css +2 -2
- data/docs/api/fetch.html +40 -14
- data/docs/api/file.README.html +8 -8
- data/docs/api/file_list.html +2 -2
- data/docs/api/frames.html +2 -2
- data/docs/api/index.html +8 -8
- data/docs/api/js/app.js +14 -3
- data/docs/api/method_list.html +318 -22
- data/docs/api/middleware.html +498 -0
- data/docs/api/pure_component.html +428 -0
- data/docs/api/state.html +35 -9
- data/docs/api/top-level-namespace.html +9 -7
- data/docs/gitbook/gitbook.js +2 -2
- data/docs/gitbook/theme.js +1 -1
- data/docs/guides/debugging.html +35 -9
- data/docs/guides/development.html +35 -9
- data/docs/guides/install.html +452 -0
- data/docs/guides/tutorial.html +101 -66
- data/docs/index.html +37 -17
- data/docs/ovtologo.png +0 -0
- data/docs/search_index.json +1 -1
- data/examples/sinatra/Gemfile +2 -0
- data/examples/sinatra/Gemfile.lock +33 -31
- data/examples/sinatra/app.rb +1 -4
- data/examples/sinatra/config.ru +6 -6
- data/examples/static/Gemfile.lock +10 -14
- data/lib/ovto/actions.rb +11 -0
- data/lib/ovto/app.rb +37 -13
- data/lib/ovto/component.rb +149 -73
- data/lib/ovto/fetch.rb +1 -1
- data/lib/ovto/middleware.rb +121 -0
- data/lib/ovto/pure_component.rb +22 -0
- data/lib/ovto/state.rb +13 -5
- data/lib/ovto/version.rb +1 -1
- data/lib/ovto/wired_action_set.rb +40 -0
- data/lib/ovto/wired_actions.rb +49 -11
- data/lib/ovto.rb +27 -0
- data/ovto.gemspec +1 -1
- metadata +35 -9
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: af78c92bfaecab00f15a74103e9c3f5da29f7e5580ce757d31dc631375659822
|
|
4
|
+
data.tar.gz: 30f3d9855241f9f1cf5f45fd42681aff410958ca19d52fab583a255f727da7d3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e36a4544dca7bdd0b98f6a487cca2ceaa460b600c38cb656f69c124df606538301c650790b61333037353c4e80f30a82a421122483cf58be0d833f35eb1099e3
|
|
7
|
+
data.tar.gz: 3dc5df9d6c98aef173b9733bac33cf9d8bd019291497a35812a87c1bbd8b82ba12e607f1b5f1a1cf501801c6e3f2a69af8838de25b757d909061acec338415b0
|
data/.gitignore
CHANGED
data/.gitmodules
CHANGED
data/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,18 @@
|
|
|
1
|
-
##
|
|
1
|
+
## v0.6.1 (2021-10-22)
|
|
2
|
+
|
|
3
|
+
- Update Opal to 1.2
|
|
4
|
+
|
|
5
|
+
## v0.6.0 (2020-02-29)
|
|
6
|
+
|
|
7
|
+
- feat: Ovto::Middleware (#18)
|
|
8
|
+
- Experimental. API may change during 0.6.x
|
|
9
|
+
- feat(State): default_proc (#17)
|
|
10
|
+
- feat(o): `o SubComp do ...end` now passes the block to `SubComp#render` (#16)
|
|
11
|
+
|
|
12
|
+
## v0.5.0 (2019-12-22)
|
|
13
|
+
|
|
14
|
+
- new: Ovto::PureComponent
|
|
15
|
+
- new: Support Opal 1.0
|
|
2
16
|
|
|
3
17
|
## v0.4.1 (2019-04-19)
|
|
4
18
|
|
|
@@ -15,7 +29,6 @@ New features
|
|
|
15
29
|
Example:
|
|
16
30
|
|
|
17
31
|
o 'div', `{nodeName: ....}`
|
|
18
|
-
|
|
19
32
|
|
|
20
33
|
## v0.3.0 (2018-12-24)
|
|
21
34
|
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,52 +1,48 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
ovto (0.
|
|
5
|
-
opal (
|
|
4
|
+
ovto (0.6.1)
|
|
5
|
+
opal (>= 0.11, < 2)
|
|
6
6
|
rack (~> 2.0)
|
|
7
7
|
thor (~> 0.20)
|
|
8
8
|
|
|
9
9
|
GEM
|
|
10
10
|
remote: https://rubygems.org/
|
|
11
11
|
specs:
|
|
12
|
-
ast (2.4.
|
|
13
|
-
concurrent-ruby (1.1.
|
|
14
|
-
|
|
15
|
-
opal (0.11.4)
|
|
12
|
+
ast (2.4.2)
|
|
13
|
+
concurrent-ruby (1.1.9)
|
|
14
|
+
opal (1.2.0)
|
|
16
15
|
ast (>= 2.3.0)
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
opal (~> 0.11.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 (
|
|
29
|
-
ast (~> 2.
|
|
30
|
-
rack (2.
|
|
31
|
-
rake (
|
|
32
|
-
|
|
33
|
-
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)
|
|
34
30
|
concurrent-ruby (~> 1.0)
|
|
35
31
|
rack (> 1, < 3)
|
|
36
32
|
thor (0.20.3)
|
|
37
|
-
tilt (2.0.
|
|
38
|
-
yard (0.9.
|
|
33
|
+
tilt (2.0.10)
|
|
34
|
+
yard (0.9.26)
|
|
39
35
|
|
|
40
36
|
PLATFORMS
|
|
41
37
|
ruby
|
|
42
38
|
|
|
43
39
|
DEPENDENCIES
|
|
44
|
-
opal
|
|
45
|
-
opal-rspec
|
|
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.
|
|
48
|
+
2.2.22
|
data/README.md
CHANGED
|
@@ -6,7 +6,7 @@ Client-side web framework for Opal
|
|
|
6
6
|
|
|
7
7
|
## Documents
|
|
8
8
|
|
|
9
|
-
- [Book](https://yhara.github.io/ovto/)
|
|
9
|
+
- [Book](https://yhara.github.io/ovto/docs/)
|
|
10
10
|
- [yardoc](https://yhara.github.io/ovto/api/)
|
|
11
11
|
|
|
12
12
|
## Example
|
|
@@ -59,7 +59,7 @@ end
|
|
|
59
59
|
MyApp.run(id: 'ovto')
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
See the [book](https://yhara.github.io/ovto/guides/tutorial.html) for details.
|
|
62
|
+
See the [book](https://yhara.github.io/ovto/docs/guides/tutorial.html) for details.
|
|
63
63
|
|
|
64
64
|
## Setup
|
|
65
65
|
|
data/book/SUMMARY.md
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
# Summary
|
|
2
2
|
|
|
3
|
-
- [Introduction](README.md)
|
|
4
3
|
- [Getting Started](guides/tutorial.md)
|
|
4
|
+
- [Install](guides/install.md)
|
|
5
5
|
- API
|
|
6
6
|
- [Ovto::App](api/app.md)
|
|
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
data/book/api/fetch.md
CHANGED
|
@@ -9,7 +9,7 @@ Ovto provides wrapper of [Fetch API](https://developer.mozilla.org/en-US/docs/We
|
|
|
9
9
|
GET
|
|
10
10
|
|
|
11
11
|
```rb
|
|
12
|
-
Ovto.fetch('/api/tasks'){|json_data|
|
|
12
|
+
Ovto.fetch('/api/tasks').then{|json_data|
|
|
13
13
|
p json_data
|
|
14
14
|
}.fail{|e| # Network error, 404 Not Found, JSON parse error, etc.
|
|
15
15
|
p e
|
|
@@ -19,7 +19,7 @@ Ovto.fetch('/api/tasks'){|json_data|
|
|
|
19
19
|
POST
|
|
20
20
|
|
|
21
21
|
```rb
|
|
22
|
-
Ovto.fetch('/api/new_task', 'POST', {title: "do something"}){|json_data|
|
|
22
|
+
Ovto.fetch('/api/new_task', 'POST', {title: "do something"}).then{|json_data|
|
|
23
23
|
p json_data
|
|
24
24
|
}.fail{|e| # Network error, 404 Not Found, JSON parse error, etc.
|
|
25
25
|
p e
|
|
@@ -30,7 +30,7 @@ Ovto.fetch('/api/new_task', 'POST', {title: "do something"}){|json_data|
|
|
|
30
30
|
PUT
|
|
31
31
|
|
|
32
32
|
```rb
|
|
33
|
-
Ovto.fetch('/api/tasks/1', 'PUT', {title: "do something"}){|json_data|
|
|
33
|
+
Ovto.fetch('/api/tasks/1', 'PUT', {title: "do something"}).then{|json_data|
|
|
34
34
|
p json_data
|
|
35
35
|
}.fail{|e| # Network error, 404 Not Found, JSON parse error, etc.
|
|
36
36
|
p e
|
|
@@ -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
|
+
```
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Ovto::PureComponent
|
|
2
|
+
|
|
3
|
+
It almost the same as `Ovto::Component`, but it caches the `render` method calling with arguments of the method.
|
|
4
|
+
|
|
5
|
+
## When to use PureComponent?
|
|
6
|
+
|
|
7
|
+
Use it when your app is slow and need more speed.
|
|
8
|
+
|
|
9
|
+
## Cache strategy
|
|
10
|
+
|
|
11
|
+
It compares `render` method arguments and the previous arguments.
|
|
12
|
+
|
|
13
|
+
```rb
|
|
14
|
+
def render
|
|
15
|
+
o 'div' do
|
|
16
|
+
o Pure, foo: state.foo
|
|
17
|
+
o NotPure bar: state.bar
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
In this case, `NotPure` component's render method is called even if `state.foo` is changed.
|
|
23
|
+
Whereas `Pure` component's render method is called only if `state.foo` is changed.
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
## State
|
|
27
|
+
|
|
28
|
+
`state` method is not available in `PureComponent`, because `PureComponent` does not treat state as the cache key.
|
|
29
|
+
If you'd like to use state in `PureComponent`, pass the state from the parent component.
|
|
30
|
+
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# Install
|
|
2
|
+
|
|
3
|
+
## Use Ovto with static files
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
$ gem i ovto
|
|
7
|
+
$ ovto new myapp --static
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
## Use Ovto with Sinatra
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
$ gem i ovto
|
|
14
|
+
$ ovto new myapp --sinatra
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Install Ovto into Rails apps
|
|
18
|
+
|
|
19
|
+
Edit `Gemfile`
|
|
20
|
+
|
|
21
|
+
```rb
|
|
22
|
+
gem 'opal-rails'
|
|
23
|
+
gem 'ovto'
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Run `bundle install`
|
|
27
|
+
|
|
28
|
+
Remove `app/assets/javascripts/application.js`
|
|
29
|
+
|
|
30
|
+
Create `app/assets/javascripts/application.js.rb`
|
|
31
|
+
|
|
32
|
+
```rb
|
|
33
|
+
require 'opal'
|
|
34
|
+
require 'rails-ujs'
|
|
35
|
+
require 'activestorage'
|
|
36
|
+
require 'turbolinks'
|
|
37
|
+
require_tree '.'
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Create `app/assets/javascripts/foo.js.rb` (file name is arbitrary)
|
|
41
|
+
|
|
42
|
+
```rb
|
|
43
|
+
require 'ovto'
|
|
44
|
+
|
|
45
|
+
class Foo < Ovto::App
|
|
46
|
+
class State < Ovto::State
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
class Actions < Ovto::Actions
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
class MainComponent < Ovto::Component
|
|
53
|
+
def render(state:)
|
|
54
|
+
o 'h1', "HELLO"
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Edit `app/views/<some controller/<some view>.html.erb`
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
<div id='foo-app'></div>
|
|
64
|
+
<%= opal_tag do %>
|
|
65
|
+
Foo.run(id: 'foo-app')
|
|
66
|
+
<% end %>
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
This should render `HELLO` in the browser.
|
|
70
|
+
|
|
71
|
+
You also need to edit config/environments/production.rb like this before deploy it to production.
|
|
72
|
+
|
|
73
|
+
```rb
|
|
74
|
+
#config.assets.js_compressor = :uglifier
|
|
75
|
+
config.assets.js_compressor = Uglifier.new(harmony: true)
|
|
76
|
+
```
|
data/book/guides/tutorial.md
CHANGED
|
@@ -5,7 +5,7 @@ but you can embed Ovto apps into a Rails or Sinatra app (See `./examples/*`).
|
|
|
5
5
|
|
|
6
6
|
This is the final Ruby code.
|
|
7
7
|
|
|
8
|
-
```
|
|
8
|
+
```rb
|
|
9
9
|
require 'ovto'
|
|
10
10
|
|
|
11
11
|
class MyApp < Ovto::App
|
|
@@ -62,7 +62,7 @@ Let's take a look step-by-step.
|
|
|
62
62
|
|
|
63
63
|
Make a Gemfile:
|
|
64
64
|
|
|
65
|
-
```
|
|
65
|
+
```rb
|
|
66
66
|
source "https://rubygems.org"
|
|
67
67
|
gem "ovto", github: 'yhara/ovto' # Use git master because ovto gem is not released yet
|
|
68
68
|
gem 'rake'
|
|
@@ -197,7 +197,7 @@ convert.
|
|
|
197
197
|
|
|
198
198
|
Now you can know the value by `state.fahrenheit`. Update `MainComponent` to show the value too.
|
|
199
199
|
|
|
200
|
-
```
|
|
200
|
+
```rb
|
|
201
201
|
class MainComponent < Ovto::Component
|
|
202
202
|
def render
|
|
203
203
|
o 'div' do
|
data/book/ovtologo.png
ADDED
|
Binary file
|
data/docs/api/Array.html
ADDED
|
@@ -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
|
+
— Documentation by YARD 0.9.24
|
|
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> »
|
|
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> ⇒ 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> ⇒ <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'>"</span><span class='tstring_content'>[</span><span class='tstring_end'>"</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'>"</span><span class='tstring_content'>, </span><span class='tstring_end'>"</span></span><span class='rparen'>)</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>]</span><span class='tstring_end'>"</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 Sat Feb 29 23:26:32 2020 by
|
|
184
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
185
|
+
0.9.24 (ruby-2.5.5).
|
|
186
|
+
</div>
|
|
187
|
+
|
|
188
|
+
</div>
|
|
189
|
+
</body>
|
|
190
|
+
</html>
|