module Observed::Configurable::ClassMethods
Public Instance Methods
attribute(name, options={})
click to toggle source
@param [String|Symbol] name
# File lib/observed/configurable.rb, line 34 def attribute(name, options={}) unless instance_methods.include? name.intern define_method(name) do get_attribute_value(name) || fail_for_not_configured_parameter(name) end end default_value = options && options[:default] default name => default_value if default_value end
create(args)
click to toggle source
# File lib/observed/configurable.rb, line 52 def create(args) self.new(args) end
default(args)
click to toggle source
# File lib/observed/configurable.rb, line 44 def default(args) @defaults = defaults.merge(args) end
defaults()
click to toggle source
# File lib/observed/configurable.rb, line 48 def defaults @defaults ||= {} end
inherited(klass)
click to toggle source
Inherits the default values stored in @defaults to the sub-class
Calls superclass method
# File lib/observed/configurable.rb, line 57 def inherited(klass) super if defined? super klass.default defaults end