Inside the configuration class
class Configuration
attr_accessor :bar
def initializer
@bar = 'baz'
end
endInside the base Foo module
require('configuration')
module Foo
class << self
attr_writer :configuration
end
def self.configuration
@_configuration ||= Configuration.new
end
def self.configure
yield(configuration)
end
end