Struct melib::Collection [−][src]
pub struct Collection {
pub envelopes: Arc<RwLock<HashMap<EnvelopeHash, Envelope>>>,
pub message_id_index: Arc<RwLock<HashMap<Vec<u8>, EnvelopeHash>>>,
pub threads: Arc<RwLock<HashMap<MailboxHash, Threads>>>,
pub sent_mailbox: Arc<RwLock<Option<MailboxHash>>>,
pub mailboxes: Arc<RwLock<HashMap<MailboxHash, HashSet<EnvelopeHash>>>>,
pub tag_index: Arc<RwLock<BTreeMap<u64, String>>>,
}
Fields
envelopes: Arc<RwLock<HashMap<EnvelopeHash, Envelope>>>
message_id_index: Arc<RwLock<HashMap<Vec<u8>, EnvelopeHash>>>
threads: Arc<RwLock<HashMap<MailboxHash, Threads>>>
sent_mailbox: Arc<RwLock<Option<MailboxHash>>>
mailboxes: Arc<RwLock<HashMap<MailboxHash, HashSet<EnvelopeHash>>>>
tag_index: Arc<RwLock<BTreeMap<u64, String>>>
Implementations
pub fn rename(
&self,
old_hash: EnvelopeHash,
new_hash: EnvelopeHash,
mailbox_hash: MailboxHash
) -> bool
pub fn merge(
&self,
new_envelopes: HashMap<EnvelopeHash, Envelope>,
mailbox_hash: MailboxHash,
sent_mailbox: Option<MailboxHash>
) -> Option<SmallVec<[MailboxHash; 8]>>
pub fn merge(
&self,
new_envelopes: HashMap<EnvelopeHash, Envelope>,
mailbox_hash: MailboxHash,
sent_mailbox: Option<MailboxHash>
) -> Option<SmallVec<[MailboxHash; 8]>>
Merge new mailbox to collection and update threads. Returns a list of already existing mailboxs whose threads were updated
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Collection
impl Send for Collection
impl Sync for Collection
impl Unpin for Collection
impl UnwindSafe for Collection
Blanket Implementations
Mutably borrows from an owned value. Read more