summaryrefslogtreecommitdiffstats
path: root/melib/src/email/address.rs
diff options
context:
space:
mode:
Diffstat (limited to 'melib/src/email/address.rs')
-rw-r--r--melib/src/email/address.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/melib/src/email/address.rs b/melib/src/email/address.rs
index 789eec4e..dd771d92 100644
--- a/melib/src/email/address.rs
+++ b/melib/src/email/address.rs
@@ -65,6 +65,16 @@ impl Address {
Address::Group(_) => None,
}
}
+
+ pub fn get_tags(&self, separator: char) -> Vec<String> {
+ let mut ret = Vec::new();
+ if let email = self.get_email() {
+ let at_pos = email.as_bytes().iter().position(|&b| b == b'@').unwrap();
+ let email: &str = email[..at_pos].into();
+ ret.extend(email.split(separator).skip(1).map(str::to_string));
+ }
+ ret
+ }
}
impl Eq for Address {}