{"ast_node_type":"variable","tokens":[{"end":43,"kind":"keyword","start":0,"text":"while"}]}
    while let Some(piece) = parser.next() {
    let mut pieces = Vec::new();
        if !parser.errors.is_empty() {