tamashii-config 0.1.0 → 0.2.0

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
  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