module Dry::Configurable
def setting(key, *args, &block)
- Api: - public
Returns:
-
(Dry::Configurable::Config)
-
Other tags:
- Yield: -
Parameters:
-
default
(Mixed
) -- -
key
(Mixed
) --
def setting(key, *args, &block) raise_already_defined_config(key) if defined?(@_config) value, options = ArgumentParser.call(args) if block if block.parameters.empty? value = _config_for(&block) else processor = block end end _settings << ::Dry::Configurable::Config::Value.new( key, !value.nil? ? value : ::Dry::Configurable::Config::Value::NONE, processor || ::Dry::Configurable::Config::DEFAULT_PROCESSOR ) store_reader_options(key, options) if options.any? end