From e75a666a4c75dc9249a413248dd99abe4c91f47c Mon Sep 17 00:00:00 2001 From: Joe Ardent Date: Wed, 21 Mar 2018 13:43:52 -0700 Subject: [PATCH] better display-children-finding code --- src/utils.rs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/utils.rs b/src/utils.rs index f0dab5e..7153961 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -177,16 +177,16 @@ fn display_node>( }); let mut is_biggest = true; - let mut has_display_children = false; for node in to_display { if node_to_print.children().contains(node) { - let has_children = node.children().len() > 0; - if node.entry().name().matches("/").count() == printable_node_slashes + 1 { + let has_display_children = node.children() + .iter() + .fold(false, |has_kids, n| has_kids || to_display.contains(&n)); + + let has_children = node.children().len() > 0 && has_display_children; + if node.entry().name().matches('/').count() == printable_node_slashes + 1 { num_siblings -= 1; - for ref n in node.children().iter() { - has_display_children = has_display_children || to_display.contains(n); - } - let has_children = has_children && has_display_children; + let tree_chars = { if num_siblings == 0 { if has_children {