Skip to main content

Receive

Trait Receive 

Source
pub trait Receive {
    // Required methods
    fn get_total(&mut self) -> Result<usize, Error>;
    fn get_id_list(&mut self) -> Result<Vec<String>, Error>;
    fn get_id_info(
        &mut self,
        id: &str,
    ) -> Result<(Vec<u8>, usize, String), Error>;
    fn del_id(&mut self, id: &str) -> Result<bool, Error>;

    // Provided methods
    fn get_uid_list(&mut self) -> Result<Vec<String>, Error> { ... }
    fn get_new_since(&mut self, _last_uid: &str) -> Result<Vec<String>, Error> { ... }
    fn get_validity(&mut self) -> Result<Option<u64>, Error> { ... }
    fn get_max_uid(&mut self) -> Result<Option<u64>, Error> { ... }
    fn get_uidl_map(&mut self) -> Result<Vec<(String, String)>, Error> { ... }
}

Required Methods§

Source

fn get_total(&mut self) -> Result<usize, Error>

获取邮件总数

Source

fn get_id_list(&mut self) -> Result<Vec<String>, Error>

获取指定量ID列表

Source

fn get_id_info(&mut self, id: &str) -> Result<(Vec<u8>, usize, String), Error>

获取指定ID邮件 返回 (邮件内容,邮件尺寸,邮件指纹)

Source

fn del_id(&mut self, id: &str) -> Result<bool, Error>

删除指定邮件

Provided Methods§

Source

fn get_uid_list(&mut self) -> Result<Vec<String>, Error>

获取唯一标识符列表 IMAP: 返回 UID 列表 POP3: 返回 (序号, UIDL) 列表中的 UIDL

Source

fn get_new_since(&mut self, _last_uid: &str) -> Result<Vec<String>, Error>

获取指定 UID 之后的新邮件列表 (增量查询) IMAP: 使用 UID SEARCH POP3: 需要配合本地存储比对

Source

fn get_validity(&mut self) -> Result<Option<u64>, Error>

获取邮箱有效性标识 IMAP: 返回 UIDVALIDITY POP3: 返回 None (POP3 无此概念)

Source

fn get_max_uid(&mut self) -> Result<Option<u64>, Error>

获取最大 UID (用于记录同步点)

Source

fn get_uidl_map(&mut self) -> Result<Vec<(String, String)>, Error>

获取 UIDL 映射表 (仅 POP3) 返回 Vec<(序号, UIDL)>

Implementors§