diff options
Diffstat (limited to 'melib/src/email/address.rs')
-rw-r--r-- | melib/src/email/address.rs | 10 |
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 {} |