manioc 0.1.5 → 0.1.6

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: 3720d7bf94619add5973a8b2909ede83899c81bb
4
- data.tar.gz: 21d91bae8615418ed05ca191da3d4bdbbd034ba8
3
+ metadata.gz: 77fc522f4c748ce580a9996bc713e24aea5f8710
4
+ data.tar.gz: 3683848fdd415f9d9cfe57ee1a32138336b6bdae
5
5
  SHA512:
6
- metadata.gz: 6d05be916fc5806dbcb5daf53746fe58cea1f7bcfb23be7c9cb205bb1cf917c5b363b0e865b78167a3da226f50fc75587ed1607a0e6d331691443a3f29d3cd89
7
- data.tar.gz: fba4fe7d28e526c16777fcd65b6d3c87b881308b5dbc9c0ea9c7226d0833ccb1939fd9866e48a23829285e6a5fde09365b48ba438f1cc050318fce95a75a7bcc
6
+ metadata.gz: 8077ac7b0177d5225422283ebf75158045bc1e87ed3be7e585d706cece034eaeadd092abc9abc4f01853d35781e83fc200cc7cc4678e5d2ce91031863291a1b3
7
+ data.tar.gz: ba8044f01537386c1e46aff3d87b8462f3f53e2d63162bc6fc5387104f32d9d0fdd60e5ec59172ffe7c0f8c762e6540e416d2d54e446efbbd5814918ac244ac6
@@ -1,3 +1,5 @@
1
+ require_relative './env'
2
+
1
3
  module Manioc
2
4
  class Container
3
5
  class DSL < BasicObject
@@ -19,6 +21,8 @@ module Manioc
19
21
  def initialize constructors: {}, &block
20
22
  @constructors, @cache = constructors, {}
21
23
 
24
+ @constructors[:env] ||= Manioc::Env.method(:new)
25
+
22
26
  register(&block) if block
23
27
  finalize
24
28
  end
data/lib/manioc/env.rb ADDED
@@ -0,0 +1,14 @@
1
+ module Manioc
2
+ class Env
3
+ Unset = Class.new StandardError
4
+
5
+ def method_missing name, *args
6
+ super if args.count > 1
7
+ if name =~ /\A(.*)!\Z/
8
+ ENV[$1] || raise(Unset, $1)
9
+ else
10
+ ENV[name.to_s]
11
+ end
12
+ end
13
+ end
14
+ end
@@ -1,3 +1,3 @@
1
1
  module Manioc
2
- VERSION = '0.1.5'.freeze
2
+ VERSION = '0.1.6'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: manioc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Dabbs
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-08-11 00:00:00.000000000 Z
11
+ date: 2017-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -85,6 +85,7 @@ files:
85
85
  - bin/setup
86
86
  - lib/manioc.rb
87
87
  - lib/manioc/container.rb
88
+ - lib/manioc/env.rb
88
89
  - lib/manioc/railtie.rb
89
90
  - lib/manioc/struct.rb
90
91
  - lib/manioc/version.rb