+
+
+
\ No newline at end of file
diff --git a/target/doc/mailparse/dateparse/index.html b/target/doc/mailparse/dateparse/index.html
new file mode 100644
index 0000000..e69de29
diff --git a/target/doc/mailparse/dateparse/sidebar-items.js b/target/doc/mailparse/dateparse/sidebar-items.js
new file mode 100644
index 0000000..9fffc77
--- /dev/null
+++ b/target/doc/mailparse/dateparse/sidebar-items.js
@@ -0,0 +1 @@
+initSidebarItems({"fn":[["dateparse","Convert a date field from an email header into a UNIX epoch timestamp. This function handles the most common formatting of date fields found in email headers. It may fail to parse some of the more creative formattings."]]});
\ No newline at end of file
diff --git a/target/doc/mailparse/enum.MailParseError.html b/target/doc/mailparse/enum.MailParseError.html
index 061e8f1..a7e3eb0 100644
--- a/target/doc/mailparse/enum.MailParseError.html
+++ b/target/doc/mailparse/enum.MailParseError.html
@@ -11,6 +11,7 @@
+
@@ -43,10 +44,10 @@
Convert a date field from an email header into a UNIX epoch timestamp.
+This function handles the most common formatting of date fields found in
+email headers. It may fail to parse some of the more creative formattings.
Helper method to parse a header value as a Content-Type header. The charset
defaults to "us-ascii" if no charset parameter is provided in the header
value.
Parse a single header from the raw data given.
This function takes raw byte data, and starts parsing it, expecting there
to be a MIME header key-value pair right at the beginning. It parses that
diff --git a/target/doc/mailparse/fn.parse_headers.html b/target/doc/mailparse/fn.parse_headers.html
index 46099bf..9a86a17 100644
--- a/target/doc/mailparse/fn.parse_headers.html
+++ b/target/doc/mailparse/fn.parse_headers.html
@@ -11,6 +11,7 @@
+
@@ -43,10 +44,10 @@
Parses all the headers from the raw data given.
This function takes raw byte data, and starts parsing it, expecting there
to be zero or more MIME header key-value pair right at the beginning,
diff --git a/target/doc/mailparse/fn.parse_mail.html b/target/doc/mailparse/fn.parse_mail.html
index 3aec0b8..509783e 100644
--- a/target/doc/mailparse/fn.parse_mail.html
+++ b/target/doc/mailparse/fn.parse_mail.html
@@ -11,6 +11,7 @@
+
@@ -43,10 +44,10 @@
The main mail-parsing entry point.
This function takes the raw data making up the message body and returns a
structured version of it, which allows easily accessing the header and body
@@ -58,6 +59,7 @@ information as needed.
letparsed=parse_mail(concat!(
"Subject: This is a test email\n",
"Content-Type: multipart/alternative; boundary=foobar\n",
+ "Date: Sun, 02 Oct 2016 07:06:22 -0700 (PDT)\n",
"\n",
"--foobar\n",
"Content-Type: text/plain; charset=utf-8\n",
@@ -80,7 +82,8 @@ information as needed.
"This is the plaintext version, in utf-8. Proof by Euro: \u{20AC}");
assert_eq!(parsed.subparts[1].headers[1].get_value().unwrap(), "base64");
assert_eq!(parsed.subparts[1].ctype.mimetype, "text/html");
- assert!(parsed.subparts[1].get_body().unwrap().starts_with("<html>"));
+ assert!(parsed.subparts[1].get_body().unwrap().starts_with("<html>"));
+ assert_eq!(dateparse(parsed.headers.get_first_value("Date").unwrap().unwrap().as_str()).unwrap(), 1475417182);
A struct that represents a single header in the message.
It holds slices into the raw byte array passed to parse_mail, and so the
lifetime of this struct must be contained within the lifetime of the raw
input. There are additional accessor functions on this struct to extract
the data as Rust strings.
A struct to hold a more structured representation of the Content-Type header.
This is provided mostly as a convenience since this metadata is usually
needed to interpret the message body properly.
Struct that holds the structured representation of the message. Note that
since MIME allows for nested multipart messages, a tree-like structure is
necessary to represent it properly. This struct accomplishes that by holding
a vector of other ParsedMail structures for the subparts.
A trait that is implemented by the Vec returned by the parse_headers
function. It provides a map-like interface to look up header values by their
name.
Convert a date field from an email header into a UNIX epoch timestamp.
+This function handles the most common formatting of date fields found in
+email headers. It may fail to parse some of the more creative formattings.
Helper method to parse a header value as a Content-Type header. The charset
defaults to "us-ascii" if no charset parameter is provided in the header
value.
Parse a single header from the raw data given.
This function takes raw byte data, and starts parsing it, expecting there
to be a MIME header key-value pair right at the beginning. It parses that
header and returns it, along with the index at which the next header is
@@ -126,14 +130,13 @@ expected to start. If you just want to parse a single header, you can ignore
the second component of the tuple, which is the index of the next header.
Error values are returned if the data could not be successfully interpreted
as a MIME key-value pair.
Parses all the headers from the raw data given.
This function takes raw byte data, and starts parsing it, expecting there
to be zero or more MIME header key-value pair right at the beginning,
followed by two consecutive newlines (i.e. a blank line). It parses those
@@ -144,20 +147,18 @@ returns the index at which the message body is expected to start. If you
just care about the headers, you can ignore the second component of the
returned tuple.
Error values are returned if there was some sort of parsing error.
The main mail-parsing entry point.
This function takes the raw data making up the message body and returns a
structured version of it, which allows easily accessing the header and body
information as needed.
-
-
-
+
+
diff --git a/target/doc/mailparse/macros/index.html b/target/doc/mailparse/macros/index.html
new file mode 100644
index 0000000..e69de29
diff --git a/target/doc/mailparse/macros/sidebar-items.js b/target/doc/mailparse/macros/sidebar-items.js
new file mode 100644
index 0000000..48333d3
--- /dev/null
+++ b/target/doc/mailparse/macros/sidebar-items.js
@@ -0,0 +1 @@
+initSidebarItems({});
\ No newline at end of file
diff --git a/target/doc/mailparse/sidebar-items.js b/target/doc/mailparse/sidebar-items.js
index c827115..40c4f0a 100644
--- a/target/doc/mailparse/sidebar-items.js
+++ b/target/doc/mailparse/sidebar-items.js
@@ -1 +1 @@
-initSidebarItems({"enum":[["MailParseError","An error type that represents the different kinds of errors that may be encountered during message parsing."]],"fn":[["parse_content_type","Helper method to parse a header value as a Content-Type header. The charset defaults to \"us-ascii\" if no charset parameter is provided in the header value."],["parse_header","Parse a single header from the raw data given. This function takes raw byte data, and starts parsing it, expecting there to be a MIME header key-value pair right at the beginning. It parses that header and returns it, along with the index at which the next header is expected to start. If you just want to parse a single header, you can ignore the second component of the tuple, which is the index of the next header. Error values are returned if the data could not be successfully interpreted as a MIME key-value pair."],["parse_headers","Parses all the headers from the raw data given. This function takes raw byte data, and starts parsing it, expecting there to be zero or more MIME header key-value pair right at the beginning, followed by two consecutive newlines (i.e. a blank line). It parses those headers and returns them in a vector. The normal vector functions can be used to access the headers linearly, or the MailHeaderMap trait can be used to access them in a map-like fashion. Along with this vector, the function returns the index at which the message body is expected to start. If you just care about the headers, you can ignore the second component of the returned tuple. Error values are returned if there was some sort of parsing error."],["parse_mail","The main mail-parsing entry point. This function takes the raw data making up the message body and returns a structured version of it, which allows easily accessing the header and body information as needed."]],"struct":[["MailHeader","A struct that represents a single header in the message. It holds slices into the raw byte array passed to parse_mail, and so the lifetime of this struct must be contained within the lifetime of the raw input. There are additional accessor functions on this struct to extract the data as Rust strings."],["ParsedContentType","A struct to hold a more structured representation of the Content-Type header. This is provided mostly as a convenience since this metadata is usually needed to interpret the message body properly."],["ParsedMail","Struct that holds the structured representation of the message. Note that since MIME allows for nested multipart messages, a tree-like structure is necessary to represent it properly. This struct accomplishes that by holding a vector of other ParsedMail structures for the subparts."]],"trait":[["MailHeaderMap","A trait that is implemented by the Vec returned by the parse_headers function. It provides a map-like interface to look up header values by their name."]]});
\ No newline at end of file
+initSidebarItems({"enum":[["MailParseError","An error type that represents the different kinds of errors that may be encountered during message parsing."]],"fn":[["dateparse","Convert a date field from an email header into a UNIX epoch timestamp. This function handles the most common formatting of date fields found in email headers. It may fail to parse some of the more creative formattings."],["parse_content_type","Helper method to parse a header value as a Content-Type header. The charset defaults to \"us-ascii\" if no charset parameter is provided in the header value."],["parse_header","Parse a single header from the raw data given. This function takes raw byte data, and starts parsing it, expecting there to be a MIME header key-value pair right at the beginning. It parses that header and returns it, along with the index at which the next header is expected to start. If you just want to parse a single header, you can ignore the second component of the tuple, which is the index of the next header. Error values are returned if the data could not be successfully interpreted as a MIME key-value pair."],["parse_headers","Parses all the headers from the raw data given. This function takes raw byte data, and starts parsing it, expecting there to be zero or more MIME header key-value pair right at the beginning, followed by two consecutive newlines (i.e. a blank line). It parses those headers and returns them in a vector. The normal vector functions can be used to access the headers linearly, or the MailHeaderMap trait can be used to access them in a map-like fashion. Along with this vector, the function returns the index at which the message body is expected to start. If you just care about the headers, you can ignore the second component of the returned tuple. Error values are returned if there was some sort of parsing error."],["parse_mail","The main mail-parsing entry point. This function takes the raw data making up the message body and returns a structured version of it, which allows easily accessing the header and body information as needed."]],"struct":[["MailHeader","A struct that represents a single header in the message. It holds slices into the raw byte array passed to parse_mail, and so the lifetime of this struct must be contained within the lifetime of the raw input. There are additional accessor functions on this struct to extract the data as Rust strings."],["ParsedContentType","A struct to hold a more structured representation of the Content-Type header. This is provided mostly as a convenience since this metadata is usually needed to interpret the message body properly."],["ParsedMail","Struct that holds the structured representation of the message. Note that since MIME allows for nested multipart messages, a tree-like structure is necessary to represent it properly. This struct accomplishes that by holding a vector of other ParsedMail structures for the subparts."]],"trait":[["MailHeaderMap","A trait that is implemented by the Vec returned by the parse_headers function. It provides a map-like interface to look up header values by their name."]]});
\ No newline at end of file
diff --git a/target/doc/mailparse/struct.MailHeader.html b/target/doc/mailparse/struct.MailHeader.html
index 56798f4..0313162 100644
--- a/target/doc/mailparse/struct.MailHeader.html
+++ b/target/doc/mailparse/struct.MailHeader.html
@@ -11,6 +11,7 @@
+
@@ -43,10 +44,10 @@