class Warg::Config::VariableSet::Property
Constants
- REGEXP
Public Class Methods
new(name, initial_value = nil)
click to toggle source
# File lib/warg.rb, line 1345 def initialize(name, initial_value = nil) @name = name @initial_value = initial_value end
Public Instance Methods
extended(variables_set)
click to toggle source
# File lib/warg.rb, line 1350 def extended(variables_set) variables_set.define! @name variables_set.singleton_class.class_eval <<-PROPERTY_METHODS attr_writer :#{@name} def #{@name}(&block) if block.nil? value = instance_variable_get(:@#{@name}) if value.respond_to?(:to_proc) instance_eval(&value) else value end else instance_variable_set(:@#{@name}, block) end end PROPERTY_METHODS variables_set.instance_variable_set("@#{@name}", @initial_value) end