active_object 5.8.2 → 5.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +19 -0
- data/lib/active_object/object.rb +10 -0
- data/lib/active_object/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 96dbd03288d0c0a8b3df8666835d079516a95f44d9f24ae9da7edb58b6b6c4f9
|
4
|
+
data.tar.gz: 8fe191933667e882f2563a69da969b1e20b4eb68bcf36287d957b967ea2075d6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2e5a7daff8fd0860ba6ff862b722fd804162de866c1934f68a4271c50d25274a98ef4e45d2c7ff9c14eff9a558e11ee23bc294f1b703f084f51692f332a68ccc
|
7
|
+
data.tar.gz: 3220ee17a1e417f09de8f0acedc9ed19a8c6d893c6b38d1b373eb726c5f8e6ed1a20fc146ebab00e883801a24b9ade660bcc14810ef41808bf8438b671547d01
|
data/README.md
CHANGED
@@ -1572,6 +1572,25 @@ nil.salvage('bar') #=> 'bar'
|
|
1572
1572
|
3.send_chain(:factorial, [:add, 4]) #=> 10
|
1573
1573
|
```
|
1574
1574
|
|
1575
|
+
**Send Chain If:**
|
1576
|
+
`send_chain_if` chains multiple callers to an object if it responds to it.
|
1577
|
+
|
1578
|
+
```ruby
|
1579
|
+
3.send_chain_if(:test) #=> 3
|
1580
|
+
3.send_chain_if(:factorial) #=> 6
|
1581
|
+
3.send_chain_if([:add, 4]) #=> 7
|
1582
|
+
3.send_chain_if(:factorial, [:add, 4], :test) #=> 10
|
1583
|
+
```
|
1584
|
+
|
1585
|
+
**Send If:**
|
1586
|
+
`send_if` sends a caller to an object if it responds to it.
|
1587
|
+
|
1588
|
+
```ruby
|
1589
|
+
3.send_if(:test) #=> 3
|
1590
|
+
3.send_if(:factorial) #=> 6
|
1591
|
+
3.send_if(:add, 4) #=> 7
|
1592
|
+
```
|
1593
|
+
|
1575
1594
|
**String:**
|
1576
1595
|
`string?` determines if an object is a string.
|
1577
1596
|
|
data/lib/active_object/object.rb
CHANGED
@@ -73,6 +73,16 @@ module ActiveObject
|
|
73
73
|
Array(keys).inject(self) { |obj, key| obj.send(*key) }
|
74
74
|
end
|
75
75
|
|
76
|
+
def send_chain_if(*keys)
|
77
|
+
Array(keys).inject(self) { |obj, key| obj.send_if(*key) }
|
78
|
+
end
|
79
|
+
|
80
|
+
def send_if(key, *args)
|
81
|
+
return self unless respond_to?(key)
|
82
|
+
|
83
|
+
send(key, *args)
|
84
|
+
end
|
85
|
+
|
76
86
|
def string?
|
77
87
|
is_a?(String)
|
78
88
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: active_object
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.8.
|
4
|
+
version: 5.8.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juan Gomez
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-01-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -169,7 +169,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
169
169
|
- !ruby/object:Gem::Version
|
170
170
|
version: '0'
|
171
171
|
requirements: []
|
172
|
-
rubygems_version: 3.0.
|
172
|
+
rubygems_version: 3.0.2
|
173
173
|
signing_key:
|
174
174
|
specification_version: 4
|
175
175
|
summary: Gem for commonly used ruby object helpers.
|