Sha256: 0a7f23a1cdd0014f408326f046cd7fc75a638855f6e258bb38c42d8a53df506c
Contents?: true
Size: 1.1 KB
Versions: 2
Compression:
Stored size: 1.1 KB
Contents
module EmailAttribute module Attribute extend ActiveSupport::Concern module ClassMethods def email_address_list_attribute(*attributes) options = attributes.extract_options! attributes.each do |attribute| serialize attribute, EmailAttribute::List method_body, line = <<-EOV, __LINE__ + 1 def #{attribute}=(email_address) list = EmailAttribute::List.new(email_address) rescue email_address write_attribute(:#{attribute}, list) end EOV class_eval method_body, __FILE__, line end end def email_address_attribute(*attributes) options = attributes.extract_options! attributes.each do |attribute| serialize attribute, EmailAttribute::SingleAddress method_body, line = <<-EOV, __LINE__ + 1 def #{attribute}=(email_address) write_attribute(:#{attribute}, EmailAttribute::SingleAddress.new(email_address)) end EOV class_eval method_body, __FILE__, line end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
email_attribute-0.0.2 | lib/email_attribute/attribute.rb |
email_attribute-0.0.1 | lib/email_attribute/attribute.rb |