api_scanner/scanner/common/
errors.rs1use crate::error::CapturedError;
2
3pub fn collect_result<T>(
4 result: Result<T, CapturedError>,
5 errors: &mut Vec<CapturedError>,
6) -> Option<T> {
7 match result {
8 Ok(value) => Some(value),
9 Err(err) => {
10 errors.push(err);
11 None
12 }
13 }
14}
15
16pub fn collect_results<T>(
17 results: Vec<Result<T, CapturedError>>,
18 errors: &mut Vec<CapturedError>,
19) -> Vec<T> {
20 results
21 .into_iter()
22 .filter_map(|result| collect_result(result, errors))
23 .collect()
24}