pub fn pat_contains_bindings_or_wild(pat: &hir::Pat) -> bool {
    let mut contains_bindings = false;
    pat.walk(|p| {
        match p.node {
            PatKind::Binding(..) | PatKind::Wild => {
                contains_bindings = true;
                false // there's at least one binding/wildcard, can short circuit now.
            }
            _ => true
        }
    });
    contains_bindings
}
/// Checks if the pattern contains any patterns that bind something to
/// an ident or wildcard, e.g. `foo`, or `Foo(_)`, `foo @ Bar(..)`,
Checks if the pattern contains any patterns that bind something to
an ident or wildcard, e.g.
Checks if the pattern contains any patterns that bind something to an ident or wildcard e . g .
pub fn pat_contains_bindings_or_wild(pat: &hir::Pat) -> bool {
    let mut contains_bindings = false;
    pat.walk(|p| {
        match p.node {
            PatKind::Binding(..) | PatKind::Wild => {
                contains_bindings = true;
                false // there's at least one binding/wildcard, can short circuit now.
            }
            _ => true
        }
    });
    contains_bindings
}
pub fn pat_contains_bindings_or_wild ( pat : & hir :: Pat ) -> bool { let mut contains_bindings = false ; pat . walk ( | p | { match p . node { PatKind :: Binding ( .. ) | PatKind :: Wild => { contains_bindings = true ; false // there's at least one binding/wildcard, can short circuit now. } _ => true } } ) ; contains_bindings }
Checks if the pattern contains any patterns that bind something to
an ident or wildcard, e.g.
Checks if the pattern contains any patterns that bind something to an ident or wildcard e . g .
pat
&hir::Pat
pat
&hir::Pat