tamashii-config 0.1.0 → 0.2.0

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
  SHA1:
3
- metadata.gz: b7d72be890edeb1f5523fb5f73acd17b245f5a13
4
- data.tar.gz: 22f4d45ce44b1faa7704354abfad7a096d2eb369
3
+ metadata.gz: 3d920cd94bb39cddaaa2e1c89cfa7e5c24d2870c
4
+ data.tar.gz: b6a9d79a7a72326ac532a29a937de993c007555f
5
5
  SHA512:
6
- metadata.gz: b15c2c3def5a7dabf7478e8b49bee617afd5898ffb65b5e1fe39def4eff0c2a4b2f3a99d5928fd7fb5cfb40aea5f633626183c4eeeccdadb4027770197941b8d
7
- data.tar.gz: deea84a9452acf40221bd960efd3df672b286af825b48c153a2692f9abbe88f0441cd80e2edb3805943f065618cad2e781cda50adb82563d3346eb61b4277067
6
+ metadata.gz: 0020ce3f288d4dbd4023d50fdac8872966f4ce700bb70fd2f9fe1bca65dbe8ace0af7bab91f8f78dafabc08da079135a41cc3de376bd45299eaf2499336b192c
7
+ data.tar.gz: 8c7a7a0c74566723e66971baeb1e3bfb4900143f45b2ed173193649bc0727913f95b80c908c5d32632af3e227ea74d8efa2d6cbc2e85d1f10de037f6906fdc1f
@@ -1,7 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- tamashii-config (0.1.0)
4
+ tamashii-config (0.2.0)
5
+ tamashii-hookable
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
@@ -41,6 +42,7 @@ GEM
41
42
  ruby-progressbar (~> 1.7)
42
43
  unicode-display_width (~> 1.0, >= 1.0.1)
43
44
  ruby-progressbar (1.9.0)
45
+ tamashii-hookable (0.1.0)
44
46
  unicode-display_width (1.3.0)
45
47
 
46
48
  PLATFORMS
@@ -3,6 +3,7 @@
3
3
  require 'tamashii/config/version'
4
4
  require 'tamashii/config/attribute'
5
5
  require 'tamashii/configurable'
6
+ require 'tamashii/hookable'
6
7
 
7
8
  module Tamashii
8
9
  # Tamashii Config module
@@ -12,6 +13,20 @@ module Tamashii
12
13
  # :nodoc:
13
14
  class Shared
14
15
  include Configurable
16
+
17
+ def initialize
18
+ Tamashii::Hook.run(:config, self)
19
+ end
20
+
21
+ def add(name, options = {})
22
+ self.class.config(name, options)
23
+ end
24
+
25
+ def register(name, configurable)
26
+ raise NotConfigurableError unless configurable.is_a?(Configurable)
27
+ add(name)
28
+ self[name] = configurable
29
+ end
15
30
  end
16
31
 
17
32
  class << self
@@ -24,16 +39,6 @@ module Tamashii
24
39
  shared.send(name, *args, &block)
25
40
  end
26
41
 
27
- def add(name, options = {})
28
- Shared.config(name, options)
29
- end
30
-
31
- def register(name, configurable)
32
- raise NotConfigurableError unless configurable.is_a?(Configurable)
33
- add(name)
34
- shared[name] = configurable
35
- end
36
-
37
42
  private
38
43
 
39
44
  def shared
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Tamashii
4
4
  module Config
5
- VERSION = '0.1.0'
5
+ VERSION = '0.2.0'
6
6
  end
7
7
  end
@@ -21,6 +21,8 @@ Gem::Specification.new do |spec|
21
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
22
  spec.require_paths = ['lib']
23
23
 
24
+ spec.add_runtime_dependency 'tamashii-hookable'
25
+
24
26
  spec.add_development_dependency 'bundler', '~> 1.16'
25
27
  spec.add_development_dependency 'rake', '~> 10.0'
26
28
  spec.add_development_dependency 'rspec', '~> 3.0'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tamashii-config
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - 蒼時弦也
@@ -10,6 +10,20 @@ bindir: exe
10
10
  cert_chain: []
11
11
  date: 2017-11-12 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: tamashii-hookable
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: bundler
15
29
  requirement: !ruby/object:Gem::Requirement