mail_core_ng/
lib.rs

1//! Provides the core mail type `Mail` for the `mail` crate.
2//! This crate provides the type called `Mail` as well as ways
3//! to create it. It also provides the builder context interface
4//! and the `Resource` type, which is used to represent mail bodies.
5//! Especially such which are attachments or embedded images.
6//!
7#![recursion_limit="128"]
8
9#[macro_use]
10extern crate log;
11#[macro_use]
12extern crate failure;
13extern crate media_type;
14extern crate chrono;
15extern crate futures;
16extern crate rand;
17extern crate vec1;
18extern crate soft_ascii_string;
19extern crate checked_command;
20#[cfg_attr(test, macro_use)]
21extern crate mail_headers as headers;
22extern crate mail_internals as internals;
23
24#[cfg(feature="serde")]
25extern crate serde;
26#[cfg(all(test, feature="serde"))]
27extern crate serde_test;
28
29#[cfg(feature="default_impl_cpupool")]
30extern crate futures_cpupool;
31#[cfg(feature="test-utils")]
32extern crate lazy_static;
33
34
35
36
37#[macro_use]
38mod macros;
39mod iri;
40pub mod error;
41pub mod utils;
42pub mod mime;
43pub mod context;
44mod resource;
45mod encode;
46mod mail;
47pub mod compose;
48#[cfg(feature="test-utils")]
49pub mod test_utils;
50
51pub mod default_impl;
52
53pub use self::iri::IRI;
54pub use self::resource::*;
55pub use self::mail::*;
56
57pub use ::context::{Context, MaybeEncData};
58
59
60
61#[cfg(all(feature="serde", not(feature="serde-impl")))]
62compile_error!(concat!(
63    "\n---------------------------------------\n",
64    " for serde use feature `serde-impl`,\n",
65    " `serde` can not be used as feature in\n",
66    " this crate due to limitations with Cargo\n",
67    "-----------------------------------------\n"
68));