pub fn anonymize_late_bound_regions<T>(&self, sig: &Binder<T>) -> Binder<T>
        where T : TypeFoldable<'tcx>,
    {
        let mut counter = 0;
        Binder(self.replace_late_bound_regions(sig, |_| {
            counter += 1;
            ty::ReLateBound(ty::DebruijnIndex::new(1), ty::BrAnon(counter))
        }).0)
    }
/// Rewrite any late-bound regions so that they are anonymous.  Region numbers are
/// assigned starting at 1 and increasing monotonically in the order traversed
/// by the fold operation.
///
/// The chief purpose of this function is to canonicalize regions so that two
/// `FnSig`s or `TraitRef`s which are equivalent up to region naming will become
/// structurally identical.  For example, `for<'a, 'b> fn(&'a isize, &'b isize)` and
/// `for<'a, 'b> fn(&'b isize, &'a isize)` will become identical after anonymization.
Rewrite any late-bound regions so that they are anonymous.  Region numbers are
assigned starting at 1 and increasing monotonically in the order traversed
by the fold operation.

The chief purpose of this function is to canonicalize regions so that two
`FnSig`s or `TraitRef`s which are equivalent up to region naming will become
structurally identical.
Rewrite any late - bound regions so that they are anonymous . Region numbers are assigned starting at 1 and increasing monotonically in the order traversed by the fold operation . The chief purpose of this function is to canonicalize regions so that two ` FnSig ` s or ` TraitRef ` s which are equivalent up to region naming will become structurally identical .
pub fn anonymize_late_bound_regions<T>(&self, sig: &Binder<T>) -> Binder<T>
        where T : TypeFoldable<'tcx>,
    {
        let mut counter = 0;
        Binder(self.replace_late_bound_regions(sig, |_| {
            counter += 1;
            ty::ReLateBound(ty::DebruijnIndex::new(1), ty::BrAnon(counter))
        }).0)
    }
pub fn anonymize_late_bound_regions < T > ( & self , sig : & Binder < T > ) -> Binder < T > where T : TypeFoldable < ' tcx > , { let mut counter = 0 ; Binder ( self . replace_late_bound_regions ( sig , | _ | { counter += 1 ; ty :: ReLateBound ( ty :: DebruijnIndex :: new ( 1 ) , ty :: BrAnon ( counter ) ) } ) . 0 ) }
Rewrite any late-bound regions so that they are anonymous.
Rewrite any late - bound regions so that they are anonymous .
&self
sig
&Binder<T>