unobtanium_segmenter/chain/
start_segmentation_chain.rs

1use crate::SegmentedToken;
2
3/// Helper for starting an iterator chain.
4///
5/// Turns any `str` or `String` into an iterator over a single [SegmentedToken].
6///
7/// (Can also deal with anything else that implements `Into<SegmentedToken>`.)
8pub trait StartSegmentationChain<'a> {
9	/// Create the iterator.
10	fn start_segmentation_chain(self) -> impl Iterator<Item = SegmentedToken<'a>>;
11}
12
13impl<'a, T: Into<SegmentedToken<'a>>> StartSegmentationChain<'a> for T {
14	fn start_segmentation_chain(self) -> impl Iterator<Item = SegmentedToken<'a>> {
15		Some(self.into()).into_iter()
16	}
17}