Class: Mail::EnvelopeFromElement

Inherits:
Object
  • Object
show all
Includes:
Utilities
Defined in:
lib/mail/elements/envelope_from_element.rb

Constant Summary

Constants included from Patterns

Patterns::ATOM_UNSAFE, Patterns::CONTROL_CHAR, Patterns::CRLF, Patterns::FIELD_BODY, Patterns::FIELD_LINE, Patterns::FIELD_NAME, Patterns::FWS, Patterns::HEADER_LINE, Patterns::PHRASE_UNSAFE, Patterns::QP_SAFE, Patterns::QP_UNSAFE, Patterns::TEXT, Patterns::TOKEN_UNSAFE, Patterns::WSP

Instance Method Summary collapse

Methods included from Utilities

#atom_safe?, #bracket, #capitalize_field, #constantize, #dasherize, #dquote, #escape_paren, #map_lines, #map_with_index, #match_to_s, #paren, #quote_atom, #quote_phrase, #quote_token, #token_safe?, #unbracket, #underscoreize, #unparen, #unquote, #uri_escape, #uri_parser, #uri_unescape

Constructor Details

#initialize(string) ⇒ EnvelopeFromElement

Returns a new instance of EnvelopeFromElement.



7
8
9
10
11
12
13
14
15
# File 'lib/mail/elements/envelope_from_element.rb', line 7

def initialize( string )
  parser = Mail::EnvelopeFromParser.new
  if @tree = parser.parse(string)
    @address = tree.addr_spec.text_value.strip
    @date_time = ::DateTime.parse("#{tree.ctime_date.text_value}")
  else
    raise Mail::Field::ParseError.new(EnvelopeFromElement, string, parser.failure_reason)
  end
end

Instance Method Details

#addressObject



25
26
27
# File 'lib/mail/elements/envelope_from_element.rb', line 25

def address
  @address
end

#date_timeObject



21
22
23
# File 'lib/mail/elements/envelope_from_element.rb', line 21

def date_time
  @date_time
end

#to_s(*args) ⇒ Object



29
30
31
# File 'lib/mail/elements/envelope_from_element.rb', line 29

def to_s(*args)
  "#{@info}; #{@date_time.to_s(*args)}"
end

#treeObject



17
18
19
# File 'lib/mail/elements/envelope_from_element.rb', line 17

def tree
  @tree
end