class Pakyow::Support::Configurable::Setting
@api private
Public Class Methods
new(default:, configurable:, &block)
click to toggle source
# File lib/pakyow/support/configurable/setting.rb, line 16 def initialize(default:, configurable:, &block) @default, @block, @configurable = default, block, configurable end
Public Instance Methods
freeze()
click to toggle source
Calls superclass method
# File lib/pakyow/support/configurable/setting.rb, line 25 def freeze value super end
initialize_copy(_)
click to toggle source
Calls superclass method
# File lib/pakyow/support/configurable/setting.rb, line 20 def initialize_copy(_) @default = @default.deep_dup super end
set(value)
click to toggle source
# File lib/pakyow/support/configurable/setting.rb, line 30 def set(value) @value = value end
update_configurable(configurable)
click to toggle source
# File lib/pakyow/support/configurable/setting.rb, line 46 def update_configurable(configurable) @configurable = configurable end
value()
click to toggle source
# File lib/pakyow/support/configurable/setting.rb, line 34 def value if instance_variable_defined?(:@value) @value else @value = if @block @configurable.instance_eval(&@block) else @default end end end