Module: MailParser::RFC2822
- Included in:
- MailParser
- Defined in:
- lib/mailparser/rfc2822.rb,
lib/mailparser/rfc2822/parser.rb
Defined Under Namespace
Classes: AddrSpec, DateTime, Group, Mailbox, MsgId, MsgIdList, Parser, Received, ReturnPath, Scanner
Constant Summary collapse
- HEADER_TYPE =
{ "date" => :DATE_TIME, "from" => :MAILBOX_LIST, "sender" => :MAILBOX, "reply-to" => :ADDRESS_LIST, "to" => :ADDRESS_LIST, "cc" => :ADDRESS_LIST, "bcc" => :ADDRESS_LIST_BCC, "message-id" => :MSG_ID, "in-reply-to" => :PHRASE_MSG_ID_LIST, "references" => :PHRASE_MSG_ID_LIST, # "subject" => :UNSTRUCTURED, # "comments" => :UNSTRUCTURED, "keywords" => :PHRASE_LIST, "resent-date" => :DATE_TIME, "resent-from" => :MAILBOX_LIST, "resent-sender" => :MAILBOX, "resent-to" => :ADDRESS_LIST, "resent-cc" => :ADDRESS_LIST, "resent-bcc" => :ADDRESS_LIST_BCC, "resent-message-id" => :MSG_ID, "return-path" => :RETURN_PATH, "received" => :RECEIVED, }
- ZONE =
{ "UT" => "+0000", "GMT" => "+0000", "EDT" => "-0400", "EST" => "-0500", "CDT" => "-0500", "CST" => "-0600", "MDT" => "-0600", "MST" => "-0700", "PDT" => "-0700", "PST" => "-0800", "A" => "+0100", "B" => "+0200", "C" => "+0300", "D" => "+0400", "E" => "+0500", "F" => "+0600", "G" => "+0700", "H" => "+0800", "I" => "+0900", "K" => "+1000", "L" => "+1100", "M" => "+1200", "N" => "-0100", "O" => "-0200", "P" => "-0300", "Q" => "-0400", "R" => "-0500", "S" => "-0600", "T" => "-0700", "U" => "-0800", "V" => "-0900", "W" => "-1000", "X" => "-1100", "Y" => "-1200", "Z" => "+0000", "JST" => "+0900", }
Class Method Summary collapse
Class Method Details
.parse(name, value, opt = {}) ⇒ Object
207 208 209 210 211 212 213 214 215 216 217 |
# File 'lib/mailparser/rfc2822.rb', line 207 def parse(name, value, opt={}) htype = HEADER_TYPE[name.downcase] unless htype then return value.chomp end if htype.is_a? Array then htype[0]::Parser.new(opt).parse(htype[1], value) else Parser.new(opt).parse(htype, value) end end |