From b6ab0f2144b0367d5d7f033d554b3020c27d7c28 Mon Sep 17 00:00:00 2001 From: Niko Abeler Date: Wed, 23 Nov 2022 20:26:57 +0100 Subject: [PATCH] nicer iteration --- src/lib.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/lib.rs b/src/lib.rs index 397d8e0..7ec44ce 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -36,6 +36,13 @@ fn layout_from_edge_list( let mut edge_matrix = graph::new_edge_matrix(number_of_nodes); match edges.extract::<&PyIterator>() { Ok(iter) => { + iter.iter()? + .map(|edge| edge.and_then(PyAny::extract::<(usize, usize)>)) + .for_each(|edge| { + if let Ok((u, v)) = edge { + graph::add_edge(&mut edge_matrix, u, v); + } + }); for edge in iter { let edge = edge?; let edge = edge.extract::<(usize, usize)>()?;