class Dry::Configurable::Settings
@private
A collection of settings. This is not part of the public API.
def self.capture(&block)
-
(Dry::Configurable::Setting)
-
def self.capture(&block) DSL.(&block) end
def add(key, value = Undefined, options = Undefined, &block)
def add(key, value = Undefined, options = Undefined, &block) extended = singleton_class < Configurable raise_already_defined_config(key) if extended && configured? Setting.new(key, *Parser.(value, options, block)).tap do |s| settings << s names << s.name end end
def config_defined?
def config_defined? config_class.config_defined? end
def create_config
def create_config config_class.new end
def dup
def dup Settings.new(settings.dup) end
def each
def each settings.each { |s| yield(s) } end
def empty?
def empty? settings.empty? end
def freeze
def freeze settings.freeze super end
def initialize(settings = ::Concurrent::Array.new)
def initialize(settings = ::Concurrent::Array.new) @settings = settings @config_class = Config[self] @names = Set.new(settings.map(&:name)) yield(self) if block_given? end
def name?(name)
def name?(name) names.include?(name) end