manufacturable 1.5.0 → 1.5.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0a31e2944a3a3ba6d32850cc919ff1a74e2172645cd3e8557f7e71a1e3968dcb
4
- data.tar.gz: 12129e965112f3425b00cf46e812ce8b0bddf47169ac4ee3adedaae7561f72f1
3
+ metadata.gz: ed7ea8785e7afdcc33f4071742a85a6e4074b64cb54a19274df867a6ac6cff8f
4
+ data.tar.gz: a3d15704c9600dfa8f7565c4f8eb43979b3e97d945c91dcbaf4e29fe0794a6e1
5
5
  SHA512:
6
- metadata.gz: 336fb5ac884d512ad3a43ef9f720b11fec7e56475dd28e5be8ad80f4de86c3787f6cc89de2e6c98207a45f4eb67345fbcb1874316d251de6721f44cb1fa9b9b9
7
- data.tar.gz: 96ba407a234793cca65a245f7fca4ccb4bd96687e124e605f6ba24116cba045b45f8654c38ab5a9fd56ef9d69cc190e026251385f58b77af9b949e4cc2491661
6
+ metadata.gz: d93e23562e81927917d9313b18c9a0ae0678716b4d718d62d8ada471e539e32f1ae5705c2ac33cc7bbc5f82f32a7fb4120ed314d0f11c06600653be825e63a9e
7
+ data.tar.gz: 9038acc6b59bbf7792bdae8a556753fb42c3f4f65f7ce17e565952585bed3f99ac8a25cea20c558c867e8e9f957a7e3c4e73eafefaafe634fd37a993ec7b6dc0
@@ -30,8 +30,9 @@ module Manufacturable
30
30
 
31
31
  attr_reader :type, :key, :args, :kwargs, :block
32
32
 
33
- def initialize(type, key, *args, **kwargs, &block)
34
- @type, @key, @args, @kwargs, @block = type, key, args, kwargs, block
33
+ def initialize(*args, **kwargs, &block)
34
+ @type, @key, *@args = args
35
+ @kwargs, @block = kwargs, block
35
36
  end
36
37
 
37
38
  def return_first?
@@ -2,19 +2,11 @@ require 'manufacturable/registrar'
2
2
 
3
3
  module Manufacturable
4
4
  module Item
5
- def self.extended(base)
6
- base.instance_eval do
7
- def new(*args, **kwargs, &block)
8
- key = kwargs.delete(:manufacturable_item_key)
9
- instance = kwargs.empty? ? super(*args, &block) : super
10
- instance.instance_variable_set(:@manufacturable_item_key, key)
11
- instance
12
- end
13
- end
14
-
15
- base.class_eval do
16
- attr_reader :manufacturable_item_key
17
- end
5
+ def new(*args, **kwargs, &block)
6
+ key = kwargs.delete(:manufacturable_item_key)
7
+ instance = kwargs.empty? ? super(*args, &block) : super
8
+ instance.instance_variable_set(:@manufacturable_item_key, key)
9
+ instance
18
10
  end
19
11
 
20
12
  def corresponds_to(key, type = self.superclass)
@@ -29,5 +21,13 @@ module Manufacturable
29
21
  def default_manufacturable(type = self.superclass)
30
22
  corresponds_to(Registrar::DEFAULT_KEY, type)
31
23
  end
24
+
25
+ def self.extended(base)
26
+ base.include(InstanceMethods)
27
+ end
28
+
29
+ module InstanceMethods
30
+ attr_reader :manufacturable_item_key
31
+ end
32
32
  end
33
33
  end
@@ -1,3 +1,5 @@
1
+ require 'set'
2
+
1
3
  module Manufacturable
2
4
  class Registrar
3
5
  ALL_KEY = :__all__
@@ -1,3 +1,3 @@
1
1
  module Manufacturable
2
- VERSION = "1.5.0"
2
+ VERSION = "1.5.1"
3
3
  end
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: manufacturable
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alan Ridlehoover
8
8
  - Fito von Zastrow
9
- autorequire:
9
+ autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2020-09-23 00:00:00.000000000 Z
12
+ date: 2021-09-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -120,7 +120,7 @@ metadata:
120
120
  bug_tracker_uri: https://github.com/first-try-software/manufacturable/issues
121
121
  homepage_uri: https://github.com/first-try-software/manufacturable
122
122
  source_code_uri: https://github.com/first-try-software/manufacturable
123
- post_install_message:
123
+ post_install_message:
124
124
  rdoc_options: []
125
125
  require_paths:
126
126
  - lib
@@ -135,8 +135,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
135
  - !ruby/object:Gem::Version
136
136
  version: '0'
137
137
  requirements: []
138
- rubygems_version: 3.1.2
139
- signing_key:
138
+ rubygems_version: 3.2.15
139
+ signing_key:
140
140
  specification_version: 4
141
141
  summary: Manufacturable is a factory that builds self-registering objects.
142
142
  test_files: []