Skip to main content

try_iter_constructor_effect

Function try_iter_constructor_effect 

Source
pub(super) fn try_iter_constructor_effect<'tcx>(
    tcx: TyCtxt<'tcx>,
    callee: DefId,
) -> Option<CallEffect>
Expand description

Detect a slice-iterator constructor structurally: a callee whose argument is a &[T]/&mut [T] and whose return type is a struct whose first two fields are pointers into T (field 0 = start NonNull<T>, field 1 = end *const T/*mut T). This matches slice::Iter/IterMut and same-shaped local re-implementations by structure rather than by the type’s name.