module Configuration
taken from: viget.com/extend/easy-gem-configuration-variables-with-defaults
Public Instance Methods
Source
# File lib/serrano/helpers/configuration.rb, line 5 def configuration yield self end
Source
# File lib/serrano/helpers/configuration.rb, line 9 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
Source
# File lib/serrano/helpers/configuration.rb, line 21 def define_class_method(name, &block) (class << self; self; end).instance_eval do define_method name, &block end end