module Dry::Configurable

def self.extended(klass)

Other tags:
    Api: - private
def self.extended(klass)
  super
  klass.extend(ClassMethods)
end

def self.included(klass)

Other tags:
    Api: - private
def self.included(klass)
  raise AlreadyIncluded if klass.include?(InstanceMethods)
  super
  klass.class_eval do
    extend(ClassMethods)
    include(InstanceMethods)
    prepend(Initializer)
    class << self
      undef :config
      undef :configure
    end
  end
end

def enable_test_interface

Other tags:
    Api: - public
def enable_test_interface
  extend Dry::Configurable::TestInterface
end