{"ast_node_type":"function","tokens":[{"end":81,"kind":"keyword","start":0,"text":"fn"}]}
    fn fold_predicate(&mut self, p: ty::Predicate<'tcx>) -> ty::Predicate<'tcx> {
        if p.flags().intersects(self.needs_canonical_flags) { p.super_fold_with(self) } else { p }