class Dry::Configurable::DSL::Args

@api private

def default

Other tags:
    Api: - private
def default
  if size.equal?(1) && options.nil?
    args[0]
  elsif size > 1 && options
    args[0]
  else
    Undefined
  end
end

def ensure_valid_options

Other tags:
    Api: - private
def ensure_valid_options
  return unless options
  keys = options.keys - opts
  raise ArgumentError, "Invalid options: #{keys.inspect}" unless keys.empty?
end

def initialize(args)

Other tags:
    Api: - private
def initialize(args)
  @args = args
  @size = args.size
  @opts = Setting::OPTIONS
end

def options

Other tags:
    Api: - private
def options
  args.detect { |arg| arg.is_a?(Hash) && (opts & arg.keys).any? }
end

def to_ary

Other tags:
    Api: - private
def to_ary
  [default, options || EMPTY_HASH]
end