[][src]Crate melib

A crate that performs mail client operations such as

  • Hold an Envelope with methods convenient for mail client use. (see module email)
  • Abstract through mail storages through the MailBackend trait, and handle read/writes/updates through it. (see module melib::backends)
  • Decode attachments (see module melib::email::attachments)
  • Create new mail (see email::Draft)
  • Send mail with an SMTP client (see module smtp)
  • Manage an addressbook i.e. have contacts (see module addressbook)
  • Build thread structures out of a list of mail via their In-Reply-To and References header values (see module thread)

Other exports are

  • Thread management (see module async_workers)
  • Basic mail account configuration to use with backends (see module conf)
  • Parser combinators (see module parsec)
  • A ShellExpandTrait to expand paths like a shell.
  • A debug macro that works like std::dbg but for multiple threads. (see dbg module)

Re-exports

pub use datetime::UnixTimestamp;
pub use self::logging::LoggingLevel::*;
pub use crate::email::*;
pub use crate::thread::*;
pub use nom;
pub use smallvec;
pub use futures;
pub use smol;
pub use crate::backends::Backends;
pub use crate::backends::RefreshEvent;
pub use crate::backends::RefreshEventConsumer;
pub use crate::backends::SpecialUsageMailbox;
pub use crate::conf::*;
pub use crate::email::Envelope;
pub use crate::email::EnvelopeHash;
pub use crate::email::Flag;
pub use crate::error::IntoMeliError;
pub use crate::error::MeliError;
pub use crate::error::Result;
pub use crate::error::ResultIntoMeliError;
pub use crate::addressbook::*;
pub use shellexpand::ShellExpandTrait;

Modules

addressbook
async_workers

Primitive Async/Wait implementation.

backends
conf
connections
datetime
dbg
email

Email parsing, handling, sending etc.

error

An error object for melib

parsec
search
shellexpand
smtp

SMTP client support

sqlite3
text_processing
thread

e-mail threading (conversations)

Macros

big_if_true
debug
get_conf_val
get_path_hash
log_tag
make_address
tag_hash

Structs

Collection
EnvelopeRef
EnvelopeRefMut
RwRef

Enums

LoggingLevel

Functions

change_log_dest
change_log_level
get_log_level
log