{"ast_node_type":"variable","tokens":[{"end":71,"kind":"keyword","start":0,"text":"let"}]}
        let prev_closure = mem::replace(&mut self.current_closure, id);
        let prev_diverges = mem::replace(&mut self.diverges, Diverges::Maybe);
        let prev_ret_ty = mem::replace(&mut self.return_ty, body_ret_ty.clone());