diff options
author | Manos Pitsidianakis <el13635@mail.ntua.gr> | 2019-12-07 14:04:25 +0200 |
---|---|---|
committer | Manos Pitsidianakis <el13635@mail.ntua.gr> | 2019-12-13 00:04:59 +0200 |
commit | aa9a6a31283a69a799c95ed3ff6a1a2b427d1891 (patch) | |
tree | 388f08ff6aabfc69734fcac9fefb63f38e197345 /melib | |
parent | 30e9114d9cbb003dbc2bc2e16b210100596379dd (diff) |
melib: add SpecialUseMailbox::detect_usage method
Diffstat (limited to 'melib')
-rw-r--r-- | melib/src/backends.rs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/melib/src/backends.rs b/melib/src/backends.rs index ec008f04..a6d0b1ba 100644 --- a/melib/src/backends.rs +++ b/melib/src/backends.rs @@ -370,6 +370,28 @@ impl Default for SpecialUsageMailbox { } } +impl SpecialUsageMailbox { + pub fn detect_usage(name: &str) -> Option<SpecialUsageMailbox> { + if name.eq_ignore_ascii_case("inbox") { + Some(SpecialUsageMailbox::Inbox) + } else if name.eq_ignore_ascii_case("archive") { + Some(SpecialUsageMailbox::Archive) + } else if name.eq_ignore_ascii_case("drafts") { + Some(SpecialUsageMailbox::Drafts) + } else if name.eq_ignore_ascii_case("junk") { + Some(SpecialUsageMailbox::Junk) + } else if name.eq_ignore_ascii_case("spam") { + Some(SpecialUsageMailbox::Junk) + } else if name.eq_ignore_ascii_case("sent") { + Some(SpecialUsageMailbox::Sent) + } else if name.eq_ignore_ascii_case("trash") { + Some(SpecialUsageMailbox::Trash) + } else { + Some(SpecialUsageMailbox::Normal) + } + } +} + pub trait BackendFolder: Debug { fn hash(&self) -> FolderHash; fn name(&self) -> &str; |