module Configuration

Public Instance Methods

configure() { |self| ... } click to toggle source
# File lib/fitbyte/helpers/configuration.rb, line 2
def configure
  yield self
end
define_setting(name, default = nil) click to toggle source
# File lib/fitbyte/helpers/configuration.rb, line 6
def define_setting(name, default = nil)
  class_variable_set("@@#{name}", default)

  define_class_method "#{name}=" do |value|
    class_variable_set("@@#{name}", value)
  end

  define_class_method name do
    class_variable_get("@@#{name}")
  end
end

Private Instance Methods

define_class_method(name, &block) click to toggle source
# File lib/fitbyte/helpers/configuration.rb, line 20
def define_class_method(name, &block)
  (class << self; self; end).instance_eval do
    define_method name, &block
  end
end