{"ast_node_type":"function","tokens":[{"end":78,"kind":"keyword","start":0,"text":"pub"}]}
    pub fn new(body: &'a Body<'tcx>, root: BasicBlock) -> Preorder<'a, 'tcx> {
impl<'a, 'tcx> Preorder<'a, 'tcx> {
        let worklist = vec![root];