Module: Configuration

Included in:
Teachable::Stats
Defined in:
lib/helpers/configuration.rb

Instance Method Summary collapse

Instance Method Details

#configuration {|_self| ... } ⇒ Object

Yields:

  • (_self)

Yield Parameters:

  • _self (Configuration)

    the object that the method was called on



2
3
4
# File 'lib/helpers/configuration.rb', line 2

def configuration
  yield self
end

#define_setting(name, default = nil) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/helpers/configuration.rb', line 6

def define_setting(name, default = nil)
  #this sets a class variable
  class_variable_set("@@#{name}", default)

  #this defines a class level setter
  define_class_method("#{name}=") do |value|
    class_variable_set("@@#{name}", value)
  end

  #this defines a class level getter
  define_class_method(name) do
    class_variable_get("@@#{name}")
  end
end