lite-ruby 1.3.1 → 1.3.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8bbae849a2073a389f4e38ff5e8841d572f305c4bdb6a973595eda419c3638b7
4
- data.tar.gz: e983d29b4799e2d9c608f680d0dfa93b8f813b9bdaf802860b6a867de4fa4159
3
+ metadata.gz: 8e3035bce45906f90af5be5db4a0caca9581e73225b46c1639ef98df7ac431ef
4
+ data.tar.gz: 566859827bee72df021c49499b5c4f8c48c880633057a64de94ae491bfdec94f
5
5
  SHA512:
6
- metadata.gz: 264c6227410b80819e384fc612c4b3bd7802b5b021563c62027feb3901f9d1e023170639516ca0fde18fbda591d49595426b5e46d495c4a72f3d0680053884c8
7
- data.tar.gz: b64b81b77447af8133eae36c57e3295f0073064e1138ec66380ac43410a9b794a59bffa22d4ef6bd00550adfcb9bd532dfaacea66fb2ad9218a07c7197a469f8
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.1] - 2021-07-19
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
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- lite-ruby (1.3.1)
4
+ lite-ruby (1.3.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -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 class between the PG gem and the `array?` method.
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?(*objs)
59
- objs.any? { |obj| is_a?(obj) }
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(*keys)
84
- try_call(*keys) || self
83
+ def safe_call(...)
84
+ try_call(...) || self
85
85
  end
86
86
 
87
- def safe_send(*keys)
88
- try_send(*keys) || self
87
+ def safe_send(...)
88
+ try_send(...) || self
89
89
  end
90
90
 
91
- def safe_try(*obj, &block)
92
- try(*obj, &block) || self
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(*obj, placeholder: '---', &block)
100
- try(*obj, &block).salvage(placeholder)
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(*keys)
104
- Array(keys).inject(self) { |obj, key| obj.send(*key) }
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(*keys)
108
- Array(keys).inject(self) { |obj, key| obj.send_if(*key) }
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(*keys)
154
+ def try_call(...)
155
155
  return unless respond_to?(:call)
156
156
 
157
- keys.blank? ? call : call(*keys)
157
+ call(...)
158
158
  end
159
159
 
160
- def try_send(*keys)
161
- send(*keys)
160
+ def try_send(...)
161
+ send(...)
162
162
  rescue StandardError
163
163
  nil
164
164
  end
@@ -10,7 +10,7 @@ if Lite::Ruby.configuration.monkey_patches.include?('open_struct')
10
10
  end
11
11
 
12
12
  def replace(args)
13
- args.each { |key, val| send("#{key}=", val) }
13
+ args.each { |key, val| self[key] = val }
14
14
  end
15
15
 
16
16
  def to_hash(table: true)
@@ -5,9 +5,7 @@ class Object
5
5
  def blank?
6
6
  object = self
7
7
  object = object.strip if respond_to?(:strip)
8
- return object.empty? if respond_to?(:empty?)
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(*obj, &block)
30
- try!(*obj, &block) if obj.empty? || respond_to?(obj.first)
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!(*obj, &block)
34
- if obj.empty? && defined?(yield)
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(*obj, &block)
39
+ public_send(method_name, *args, &block)
38
40
  end
39
41
  end
40
42
 
@@ -3,7 +3,7 @@
3
3
  module Lite
4
4
  module Ruby
5
5
 
6
- VERSION = '1.3.1'
6
+ VERSION = '1.3.2'
7
7
 
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lite-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Gomez