module Settings::Setting::Assignment
Public Instance Methods
assign(receiver, attribute, value, strict=false)
click to toggle source
# File lib/settings/setting/assignment.rb, line 6 def assign(receiver, attribute, value, strict=false) settable = assure_settable(receiver, attribute, strict) if settable assign_value(receiver, attribute, value) end receiver end
assign_value(receiver, attribute, value)
click to toggle source
# File lib/settings/setting/assignment.rb, line 15 def assign_value(receiver, attribute, value) receiver.public_send("#{attribute}=", value) end
assignable?(receiver, attribute)
click to toggle source
# File lib/settings/setting/assignment.rb, line 24 def assignable?(receiver, attribute) receiver.respond_to? setter_name(attribute) end
setter_name(attribute)
click to toggle source
# File lib/settings/setting/assignment.rb, line 28 def setter_name(attribute) :"#{attribute.to_s}=" unless attribute.to_s.end_with? '=' end
setting?(receiver, attribute)
click to toggle source
# File lib/settings/setting/assignment.rb, line 19 def setting?(receiver, attribute) receiver_class = receiver.class Settings::Registry.instance.setting? receiver_class, attribute end