callable-mixin 0.1.0 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 963cf5da4e14188c462b46f0f7a9cfc546cc189d4b464f5d265f2f6806a9b0d1
4
- data.tar.gz: 1610376b0f5f392f3f6dd2bc87a926eae0baf3c8c1f6a6751380857f7957250a
3
+ metadata.gz: f02bb980d5c43522ab33033a546c9b9418bb02cec29dcc1ef7254413c9beaf7f
4
+ data.tar.gz: 796a78f8e6f06b9518742cde7b3fd6101921bad24b8201a0bcd26e0befff1a3d
5
5
  SHA512:
6
- metadata.gz: 258cb27a1405b6cdefca5c17e132864d54f0d895a8e73a6138cc2ba9b0bad92545e2cab8f17a52b214040d910fd34497e6046425fe4217cf405ccf8cffa42377
7
- data.tar.gz: 32e8483f9145fb9660243276d5406a86cd41215df09ef90df59763420111d3a7f0227b85fca11cde468428bc851c11c924467043ff9c0ee66c287045584da5a1
6
+ metadata.gz: 7be17d2dc903fe4b37bb4b5a8003296e36c6dfde4cefecfaf5ec5305ae02800b14088bc90443b74fb78796e49191def264b67b7b0aee9c00c0651f62e37673ce
7
+ data.tar.gz: 7d6b34a18d7bf1bf4ce34d919d8f0fbc3803bcc1a94cccb78d96f27db63e0a4f3667174d3fa53879aaf899c2705f2c85928e8f4354cdc1b4df5b440b5409bac2
@@ -18,12 +18,13 @@ module Callable
18
18
  # @raise [ConstructionError] when instantiation fails
19
19
  def call(*args, **kwargs, &block)
20
20
  inst = begin
21
- # avoids Ruby 2.0–2.6 quirk
22
- if kwargs.empty?
23
- new(*args, &block)
24
- else
25
- new(*args, **kwargs, &block)
26
- end
21
+ # avoids Ruby 2.3–2.6 quirk
22
+ kwargs.empty? ? new(*args, &block) : new(*args, **kwargs, &block)
23
+ rescue ArgumentError => error
24
+ raise if error.class != ArgumentError
25
+ raise ConstructionError,
26
+ "Failed to construct #{name}.new with the supplied arguments: #{error.message}",
27
+ error.backtrace
27
28
  end
28
29
 
29
30
  if block_given? && inst.method(:call).arity.zero?
@@ -31,10 +32,6 @@ module Callable
31
32
  else
32
33
  inst.call
33
34
  end
34
- rescue ArgumentError => error
35
- raise ConstructionError,
36
- "Failed to construct #{name}.new with the supplied arguments: #{error.message}",
37
- error.backtrace
38
35
  end
39
36
  end
40
37
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Callable
4
- VERSION = '0.1.0'
4
+ VERSION = '0.1.2'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: callable-mixin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Crowther