lite-ruby 1.3.1 → 1.3.2
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/CHANGELOG.md +5 -1
- data/Gemfile.lock +1 -1
- data/lib/lite/ruby/object.rb +21 -21
- data/lib/lite/ruby/open_struct.rb +1 -1
- data/lib/lite/ruby/safe/object.rb +10 -8
- data/lib/lite/ruby/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8e3035bce45906f90af5be5db4a0caca9581e73225b46c1639ef98df7ac431ef
|
4
|
+
data.tar.gz: 566859827bee72df021c49499b5c4f8c48c880633057a64de94ae491bfdec94f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6039e7334d7eace9f2cc0537c8d3b2fe6da1f8e2ec296d445acf0bb2fcae62a9c69b16ea002cffdd75a09178e6b0671f3075045b952493135fae184a27d91054
|
7
|
+
data.tar.gz: a9aa682a454cbd7084e74533f7aebdfed02c27fc321e6c6650d872f695d74222d7d7246cd647d1f8b57abe18b14eea6da365e5225fd5396798774e195a5898cc
|
data/CHANGELOG.md
CHANGED
@@ -6,7 +6,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
6
6
|
|
7
7
|
## [Unreleased]
|
8
8
|
|
9
|
-
## [1.3.
|
9
|
+
## [1.3.2] - 2021-07-20
|
10
|
+
### Changed
|
11
|
+
- Argument passing for try and send methods
|
12
|
+
|
13
|
+
## [1.3.1] - 2021-07-20
|
10
14
|
### Removed
|
11
15
|
- Struct `[]` and `[]=` existing methods
|
12
16
|
|
data/Gemfile.lock
CHANGED
data/lib/lite/ruby/object.rb
CHANGED
@@ -10,7 +10,7 @@ if Lite::Ruby.configuration.monkey_patches.include?('object')
|
|
10
10
|
1 t true y yes on
|
11
11
|
].freeze
|
12
12
|
|
13
|
-
# NOTE: There is a
|
13
|
+
# NOTE: There is a clash between the PG gem and the `array?` method.
|
14
14
|
# We only need to skip this on migrations since that action
|
15
15
|
# happens on a seperate runtime.
|
16
16
|
unless defined?(PG) && ARGV.first.to_s.start_with?('db:')
|
@@ -55,8 +55,8 @@ if Lite::Ruby.configuration.monkey_patches.include?('object')
|
|
55
55
|
end
|
56
56
|
|
57
57
|
# rubocop:disable Naming/PredicateName
|
58
|
-
def is_any?(*
|
59
|
-
|
58
|
+
def is_any?(*objects)
|
59
|
+
objects.any? { |obj| is_a?(obj) }
|
60
60
|
end
|
61
61
|
# rubocop:enable Naming/PredicateName
|
62
62
|
|
@@ -80,38 +80,38 @@ if Lite::Ruby.configuration.monkey_patches.include?('object')
|
|
80
80
|
is_a?(Range)
|
81
81
|
end
|
82
82
|
|
83
|
-
def safe_call(
|
84
|
-
try_call(
|
83
|
+
def safe_call(...)
|
84
|
+
try_call(...) || self
|
85
85
|
end
|
86
86
|
|
87
|
-
def safe_send(
|
88
|
-
try_send(
|
87
|
+
def safe_send(...)
|
88
|
+
try_send(...) || self
|
89
89
|
end
|
90
90
|
|
91
|
-
def safe_try(
|
92
|
-
try(
|
91
|
+
def safe_try(...)
|
92
|
+
try(...) || self
|
93
93
|
end
|
94
94
|
|
95
95
|
def salvage(placeholder = '---')
|
96
96
|
blank? ? placeholder : self
|
97
97
|
end
|
98
98
|
|
99
|
-
def salvage_try(*
|
100
|
-
try(*
|
99
|
+
def salvage_try(method_name = nil, *args, placeholder: '---', &block)
|
100
|
+
try(method_name, *args, &block).salvage(placeholder)
|
101
101
|
end
|
102
102
|
|
103
|
-
def send_chain(*
|
104
|
-
Array(
|
103
|
+
def send_chain(*args)
|
104
|
+
Array(args).inject(self) { |obj, argz| obj.send(*argz) }
|
105
105
|
end
|
106
106
|
|
107
|
-
def send_chain_if(*
|
108
|
-
Array(
|
107
|
+
def send_chain_if(*args)
|
108
|
+
Array(args).inject(self) { |obj, argz| obj.send_if(*argz) }
|
109
109
|
end
|
110
110
|
|
111
|
-
def send_if(key, *args)
|
111
|
+
def send_if(key, *args, **kwargs, &block)
|
112
112
|
return self unless respond_to?(key)
|
113
113
|
|
114
|
-
send(key, *args)
|
114
|
+
send(key, *args, **kwargs, &block)
|
115
115
|
end
|
116
116
|
|
117
117
|
def set?
|
@@ -151,14 +151,14 @@ if Lite::Ruby.configuration.monkey_patches.include?('object')
|
|
151
151
|
TRUE_VALUES.include?(to_s.downcase)
|
152
152
|
end
|
153
153
|
|
154
|
-
def try_call(
|
154
|
+
def try_call(...)
|
155
155
|
return unless respond_to?(:call)
|
156
156
|
|
157
|
-
|
157
|
+
call(...)
|
158
158
|
end
|
159
159
|
|
160
|
-
def try_send(
|
161
|
-
send(
|
160
|
+
def try_send(...)
|
161
|
+
send(...)
|
162
162
|
rescue StandardError
|
163
163
|
nil
|
164
164
|
end
|
@@ -5,9 +5,7 @@ class Object
|
|
5
5
|
def blank?
|
6
6
|
object = self
|
7
7
|
object = object.strip if respond_to?(:strip)
|
8
|
-
|
9
|
-
|
10
|
-
!object
|
8
|
+
respond_to?(:empty?) ? object.empty? : !object
|
11
9
|
end
|
12
10
|
|
13
11
|
def deep_dup
|
@@ -26,15 +24,19 @@ class Object
|
|
26
24
|
self if present?
|
27
25
|
end
|
28
26
|
|
29
|
-
def try(*
|
30
|
-
|
27
|
+
def try(method_name = nil, *args, &block)
|
28
|
+
if method_name.nil? && block
|
29
|
+
block.arity.zero? ? instance_eval(&block) : yield(self)
|
30
|
+
elsif respond_to?(method_name)
|
31
|
+
public_send(method_name, *args, &block)
|
32
|
+
end
|
31
33
|
end
|
32
34
|
|
33
|
-
def try!(*
|
34
|
-
if
|
35
|
+
def try!(method_name = nil, *args, &block)
|
36
|
+
if method_name.nil? && block
|
35
37
|
block.arity.zero? ? instance_eval(&block) : yield(self)
|
36
38
|
else
|
37
|
-
public_send(*
|
39
|
+
public_send(method_name, *args, &block)
|
38
40
|
end
|
39
41
|
end
|
40
42
|
|
data/lib/lite/ruby/version.rb
CHANGED