module HairyDangerzone::Awesome::ClassMethods
Public Instance Methods
danger_danger(attribute, fail_message, &block)
click to toggle source
# File lib/hairy_dangerzone.rb, line 10 def danger_danger(attribute, fail_message, &block) define_method :"#{attribute}_with_danger_danger=" do |new_value| if block.call(new_value) send(:"#{attribute}_without_danger_danger=", new_value) else fail fail_message end end alias_method :"#{attribute}_without_danger_danger=", :"#{attribute}=" alias_method :"#{attribute}=", :"#{attribute}_with_danger_danger=" end