Module: TMail::StrategyInterface

Included in:
Address, AddressGroup, HeaderField, Mail
Defined in:
lib/tmail/encode.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.create_dest(obj) ⇒ Object



42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/tmail/encode.rb', line 42

def create_dest( obj )
  case obj
  when nil
    StringOutput.new
  when String
    StringOutput.new(obj)
  when IO, StringOutput
    obj
  else
    raise TypeError, 'cannot handle this type of object for dest'
  end
end

Instance Method Details

#accept_strategy(klass, eol, charset, dest = nil) ⇒ Object



68
69
70
71
72
# File 'lib/tmail/encode.rb', line 68

def accept_strategy( klass, eol, charset, dest = nil )
  dest ||= ''
  accept klass.new( create_dest(dest), charset, eol )
  dest
end

#decoded(eol = "\n", charset = 'e', dest = nil) ⇒ Object Also known as: to_s



60
61
62
63
64
# File 'lib/tmail/encode.rb', line 60

def decoded( eol = "\n", charset = 'e', dest = nil )
  # Turn the E-Mail into a string and return it with all
  # encoded characters decoded.  alias for to_s
  accept_strategy Decoder, eol, charset, dest
end

#encoded(eol = "\r\n", charset = 'j', dest = nil) ⇒ Object



56
57
58
# File 'lib/tmail/encode.rb', line 56

def encoded( eol = "\r\n", charset = 'j', dest = nil )
  accept_strategy Encoder, eol, charset, dest
end