Sha256: 36309db0f78353dd297f2d47b7022831b98191d61bc9f6f408777d7a9174b1fb

Contents?: true

Size: 430 Bytes

Versions: 3

Compression:

Stored size: 430 Bytes

Contents

module Hipbot
  module Configurable
    extend ActiveSupport::Concern
    attr_accessor :configuration

    delegate *Configuration::OPTIONS, to: :configuration

    included do
      extend ClassMethods
    end

    def initialize
      self.configuration ||= Configuration.new
    end

    module ClassMethods
      def configure &block
        instance.configuration = Configuration.new.tap(&block)
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
hipbot-1.0.4 lib/hipbot/configurable.rb
hipbot-1.0.3 lib/hipbot/configurable.rb
hipbot-1.0.0 lib/hipbot/configurable.rb