module Trestle::Configurable::ClassMethods
Public Instance Methods
defaults()
click to toggle source
# File lib/trestle/configurable.rb, line 42 def defaults @defaults ||= {} end
deprecated_option(name, message=nil)
click to toggle source
# File lib/trestle/configurable.rb, line 66 def deprecated_option(name, message=nil) define_method("#{name}=") do |value| ActiveSupport::Deprecation.warn(message) end define_method(name) do |*args| ActiveSupport::Deprecation.warn(message) end end
option(name, default=nil, opts={})
click to toggle source
# File lib/trestle/configurable.rb, line 46 def option(name, default=nil, opts={}) name = name.to_sym define_method("#{name}=") do |value| assign(name, value) end define_method(name) do |*args| value = fetch(name) if value.respond_to?(:call) && opts[:evaluate] != false value = value.call(*args) end value end defaults[name] = default end