Class: EmailAttribute::SingleAddress

Inherits:
String
  • Object
show all
Defined in:
lib/email_attribute/single_address.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(str = "") ⇒ SingleAddress

Returns a new instance of SingleAddress.



3
4
5
6
7
8
9
10
11
# File 'lib/email_attribute/single_address.rb', line 3

def initialize(str = "")
  @address = Mail::Address.new(str.to_s) rescue nil
  if @address
    value = @address.format
  else
    value = str || ""
  end
  super(value)
end

Class Method Details

.dump(email_address) ⇒ Object



20
21
22
23
24
# File 'lib/email_attribute/single_address.rb', line 20

def dump(email_address)
  return nil if email_address.blank?

  email_address.to_s
end

.load(email_address) ⇒ Object



26
27
28
# File 'lib/email_attribute/single_address.rb', line 26

def load(email_address)
  new(email_address)
end

Instance Method Details

#addressObject

rebuilds the Mail::Address if necessary using string methods on this object can bypass the initializer



15
16
17
# File 'lib/email_attribute/single_address.rb', line 15

def address
  @address ||= Mail::Address.new(self.to_s) rescue nil
end