syntax_data: {"ast_node_type":"variable","tokens":[{"end":44,"kind":"keyword","start":0,"text":"while"}]}
source_snippet:         while let Some(child) = next_child {
context_before:         let mut next_child = self.places[root].first_child;
context_after:             ensure_sufficient_stack(|| self.cache_preorder_invoke(child));