Function rustc::ty::wf::obligations
[−]
[src]
pub fn obligations<'a, 'gcx, 'tcx>(infcx: &InferCtxt<'a, 'gcx, 'tcx>, body_id: NodeId, ty: Ty<'tcx>, span: Span) -> Option<Vec<PredicateObligation<'tcx>>>
Unstable (
rustc_private)Returns the set of obligations needed to make ty well-formed.
If ty contains unresolved inference variables, this may include
further WF obligations. However, if ty IS an unresolved
inference variable, returns None, because we are not able to
make any progress at all. This is to prevent "livelock" where we
say "$0 is WF if $0 is WF".