module BlockParty::Configurable

Attributes

configuration[RW]

Public Class Methods

extended(base) click to toggle source
# File lib/block_party/configurable.rb, line 31
def self.extended(base)
  included(base)
end
included(base) click to toggle source
# File lib/block_party/configurable.rb, line 14
def self.included(base)
  class << base
    accessor = Configurable.configuration.default_configuration_accessor
    unless method_defined? accessor
      attr_accessor accessor
    end
    attr_accessor *Configurable.inheritable_settings
  end
  base.instance_variable_set :@__configuration_class__,
    Configurable.configuration.default_configuration_class
  base.instance_variable_set :@__configuration_callbacks__,
    Configurable.configuration.default_configuration_callbacks
  base.instance_variable_set :@__initial_configuration_callbacks__,
    Configurable.configuration.default_initial_configuration_callbacks
  base.extend ConfigurationMethods
end
inheritable_settings() click to toggle source
# File lib/block_party/configurable.rb, line 6
def self.inheritable_settings
  [
    :__configuration_class__,
    :__configuration_callbacks__,
    :__initial_configuration_callbacks__
  ]
end