/// Extracts the signature from the closure; only usable outside
/// of an inference context, because in that context we know that
/// there are no type variables.
///
/// If you have an inference context, use `infcx.closure_sig()`.
Extracts the signature from the closure; only usable outside
of an inference context, because in that context we know that
there are no type variables.

If you have an inference context, use `infcx.closure_sig()`.
Extracts the signature from the closure ; only usable outside of an inference context because in that context we know that there are no type variables . If you have an inference context use ` infcx . closure_sig () ` .
pub fn closure_sig(self, def_id: DefId, tcx: TyCtxt<'_, 'tcx, 'tcx>) -> ty::PolyFnSig<'tcx> {
        match self.closure_sig_ty(def_id, tcx).sty {
            ty::TyFnPtr(sig) => sig,
            ref t => bug!("closure_sig_ty is not a fn-ptr: {:?}", t),
        }
    }
pub fn closure_sig ( self , def_id : DefId , tcx : TyCtxt < ' _ , ' tcx , ' tcx > ) -> ty :: PolyFnSig < ' tcx > { match self . closure_sig_ty ( def_id , tcx ) . sty { ty :: TyFnPtr ( sig ) => sig , ref t => bug ! ( " " t ) , } }
Extracts the signature from the closure; only usable outside
of an inference context, because in that context we know that
there are no type variables.
Extracts the signature from the closure ; only usable outside of an inference context because in that context we know that there are no type variables .
self
def_id
DefId
tcx
TyCtxt<'_, 'tcx, 'tcx>