Module: ActiveSupport::Configurable::ClassMethods

Defined in:
lib/active_support/configurable.rb

Instance Method Summary collapse

Instance Method Details

#configObject


11
12
13
# File 'lib/active_support/configurable.rb', line 11

def config
  @_config ||= ActiveSupport::InheritableOptions.new(superclass.respond_to?(:config) ? superclass.config : {})
end

#config_accessor(*names) ⇒ Object


19
20
21
22
23
24
25
26
27
28
29
# File 'lib/active_support/configurable.rb', line 19

def config_accessor(*names)
  names.each do |name|
    code, line = <<-RUBY, __LINE__ + 1
      def #{name}; config.#{name}; end
      def #{name}=(value); config.#{name} = value; end
    RUBY

    singleton_class.class_eval code, __FILE__, line
    class_eval code, __FILE__, line
  end
end

#configure {|config| ... } ⇒ Object

Yields:


15
16
17
# File 'lib/active_support/configurable.rb', line 15

def configure
  yield config
end