Module: Pharrell
- Defined in:
- lib/pharrell.rb,
lib/pharrell/config.rb,
lib/pharrell/injectable.rb,
lib/pharrell/constructor.rb
Defined Under Namespace
Modules: Constructor, Injectable
Classes: BindingNotFoundError, Config, ConfigNotDefinedError, InvalidOptionsError
Constant Summary
collapse
- @@configs =
{}
- @@config =
nil
Class Method Summary
collapse
Class Method Details
.config(name, opts = {}, &blk) ⇒ Object
31
32
33
34
35
36
37
38
39
|
# File 'lib/pharrell.rb', line 31
def self.config(name, opts = {}, &blk)
check_options([:extends], opts)
if opts[:extends]
@@configs[name] = fetch_config(opts[:extends]).extend(blk)
else
@@configs[name] = Config.new(blk)
end
end
|
.instance_for(klass) ⇒ Object
46
47
48
|
# File 'lib/pharrell.rb', line 46
def self.instance_for(klass)
current_config.instance_for(klass)
end
|
.rebuild! ⇒ Object
50
51
52
|
# File 'lib/pharrell.rb', line 50
def self.rebuild!
current_config.rebuild!
end
|
.reset! ⇒ Object
54
55
56
57
|
# File 'lib/pharrell.rb', line 54
def self.reset!
@@configs = {}
@@config = nil
end
|
.use_config(name) ⇒ Object
41
42
43
44
|
# File 'lib/pharrell.rb', line 41
def self.use_config(name)
@@config = name
rebuild!
end
|