From a88659d8a61ca0d39371e058da2762c2ed8a52c2 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Sun, 30 Aug 2015 17:14:23 +0200 Subject: [PATCH] middle: use filter_map instead of flat_map with Option iters --- src/librustc/middle/traits/object_safety.rs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/librustc/middle/traits/object_safety.rs b/src/librustc/middle/traits/object_safety.rs index 3c6e939833ff..3a2602cd5b44 100644 --- a/src/librustc/middle/traits/object_safety.rs +++ b/src/librustc/middle/traits/object_safety.rs @@ -92,14 +92,13 @@ fn object_safety_violations_for_trait<'tcx>(tcx: &ty::ctxt<'tcx>, // Check methods for violations. let mut violations: Vec<_> = tcx.trait_items(trait_def_id).iter() - .flat_map(|item| { + .filter_map(|item| { match *item { ty::MethodTraitItem(ref m) => { object_safety_violation_for_method(tcx, trait_def_id, &**m) .map(|code| ObjectSafetyViolation::Method(m.clone(), code)) - .into_iter() } - _ => None.into_iter(), + _ => None, } }) .collect();