Module: SetAttributes::Attribute
- Defined in:
- lib/set_attributes/attribute.rb
Defined Under Namespace
Classes: Error
Class Method Summary collapse
Class Method Details
.set(receiver, attribute, value, strict: nil) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/set_attributes/attribute.rb', line 5 def self.set(receiver, attribute, value, strict: nil) strict = true if strict.nil? setter = :"#{attribute}=" if receiver.respond_to? setter receiver.send setter, value else if strict error_msg = "#{receiver} has no setter for #{attribute}" raise Error, error_msg end end value end |