10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/configuration_dsl.rb', line 10
def configure_with(configuration_module, &block)
@configuration_dsl ||= Impl.new(self)
@configuration_dsl.module = configuration_module
@configuration_dsl.callback = block if block_given?
@configuration_dsl.default_configuration!
@configuration_dsl.module.module_eval do
self::DEFAULTS.keys.each do |name|
next if method_defined?(name)
module_eval " def \#{name}(value)\n configuration.\#{name} = value\n end\n code\n end\n end\nend\n"
|