pub(crate) fn extract_box(ty: &Type) -> Option<&Type>