Function vibha::mode_split_str
[−]
[src]
pub fn mode_split_str(line: &str) -> Vec<ModalSlice>
Breaks up a &str
in the special way demanded by the
GameProcessLineFn
docs.
extern crate vibha; use vibha::*; // plain string assert_eq!(mode_split_str(""), vec![]); assert_eq!(mode_split_str("foo"), vec![ModalSlice::Text("foo")]); // header then text assert_eq!(mode_split_str("\x01header\x02foo"), vec![ModalSlice::Header("header"), ModalSlice::Text("foo")]); // empty slices are pruned for you assert_eq!(mode_split_str("\x01\x02foo"), vec![ModalSlice::Text("foo")]); // you can "switch" to the same mode you're already "in" assert_eq!(mode_split_str("\x01A\x01B\x02foo"), vec![ModalSlice::Header("A"), ModalSlice::Header("B"), ModalSlice::Text("foo")]);