diff --git a/melib/src/backends.rs b/melib/src/backends.rs index 855b43a4..c9ad0448 100644 --- a/melib/src/backends.rs +++ b/melib/src/backends.rs @@ -663,6 +663,12 @@ impl std::convert::TryFrom<&[EnvelopeHash]> for EnvelopeHashBatch { } } +impl Into> for &EnvelopeHashBatch { + fn into(self) -> BTreeSet { + self.iter().collect::>() + } +} + impl EnvelopeHashBatch { pub fn iter(&self) -> impl std::iter::Iterator + '_ { std::iter::once(self.first).chain(self.rest.iter().cloned()) @@ -671,6 +677,10 @@ impl EnvelopeHashBatch { pub fn len(&self) -> usize { 1 + self.rest.len() } + + pub fn to_set(&self) -> BTreeSet { + self.into() + } } #[derive(Default, Clone)]