Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/mbe/src/tt_iter.rs')
-rw-r--r--crates/mbe/src/tt_iter.rs35
1 files changed, 31 insertions, 4 deletions
diff --git a/crates/mbe/src/tt_iter.rs b/crates/mbe/src/tt_iter.rs
index b38243caee..c05a2ca150 100644
--- a/crates/mbe/src/tt_iter.rs
+++ b/crates/mbe/src/tt_iter.rs
@@ -170,11 +170,38 @@ impl<'a> TtIter<'a> {
let mut res = vec![];
if cursor.is_root() {
- while curr != cursor {
- if let Some(token) = curr.token_tree() {
- res.push(token.cloned());
+ if float_splits.is_empty() {
+ while curr != cursor {
+ if let Some(token) = curr.token_tree() {
+ res.push(token.cloned());
+ }
+ curr = curr.bump();
+ }
+ } else {
+ // let mut float_splits = float_splits.into_iter().peekable();
+ // while let Some(tt) = curr.token_tree() {
+ // let mut tt = tt.cloned();
+ // let mut tt_mut_ref = &mut tt;
+ // if let Some(fs) = float_splits.peek() {
+ // loop {
+ // curr = curr.bump_subtree();
+ // if curr == *fs {
+ // float_splits.next();
+ // }
+ // if curr.is_root() {
+ // break;
+ // }
+ // }
+ // }
+ // res.push(tt);
+ // }
+
+ while curr != cursor {
+ if let Some(token) = curr.token_tree() {
+ res.push(token.cloned());
+ }
+ curr = curr.bump();
}
- curr = curr.bump();
}
}
self.inner = self.inner.as_slice()[res.len()..].iter();