diff --git a/ic10emu/src/lib.rs b/ic10emu/src/lib.rs index ea15419..a41db7a 100644 --- a/ic10emu/src/lib.rs +++ b/ic10emu/src/lib.rs @@ -725,10 +725,8 @@ impl VM { let samples = self .batch_device(source, prefab, None) .map(|device| device.borrow_mut().get_field(typ)) - .collect::, ICError>>()? - .into_iter() - .filter(|val| !val.is_nan()) - .collect_vec(); + .filter_ok(|val| !val.is_nan()) + .collect::, ICError>>()?; Ok(mode.apply(&samples)) } @@ -743,10 +741,8 @@ impl VM { let samples = self .batch_device(source, prefab, Some(name)) .map(|device| device.borrow_mut().get_field(typ)) - .collect::, ICError>>()? - .into_iter() - .filter(|val| !val.is_nan()) - .collect_vec(); + .filter_ok(|val| !val.is_nan()) + .collect::, ICError>>()?; Ok(mode.apply(&samples)) } @@ -762,10 +758,8 @@ impl VM { let samples = self .batch_device(source, prefab, Some(name)) .map(|device| device.borrow().get_slot_field(index, typ)) - .collect::, ICError>>()? - .into_iter() - .filter(|val| !val.is_nan()) - .collect_vec(); + .filter_ok(|val| !val.is_nan()) + .collect::, ICError>>()?; Ok(mode.apply(&samples)) } @@ -780,10 +774,8 @@ impl VM { let samples = self .batch_device(source, prefab, None) .map(|device| device.borrow().get_slot_field(index, typ)) - .collect::, ICError>>()? - .into_iter() - .filter(|val| !val.is_nan()) - .collect_vec(); + .filter_ok(|val| !val.is_nan()) + .collect::, ICError>>()?; Ok(mode.apply(&samples)) } }