[perl-extutils-depends: 4/7] simplify load_deps




commit 00cd5778f708c679fad19ad8e3daa0eac192021f
Author: Ed J <mohawk2 users noreply github com>
Date:   Mon Apr 12 15:31:25 2021 +0100

    simplify load_deps

 lib/ExtUtils/Depends.pm | 18 ++++++------------
 1 file changed, 6 insertions(+), 12 deletions(-)
---
diff --git a/lib/ExtUtils/Depends.pm b/lib/ExtUtils/Depends.pm
index 02fa260..55c48c7 100644
--- a/lib/ExtUtils/Depends.pm
+++ b/lib/ExtUtils/Depends.pm
@@ -229,20 +229,14 @@ sub _quote_if_space { $_[0] =~ / / ? qq{"$_[0]"} : $_[0] }
 
 sub load_deps {
        my $self = shift;
-       my @load = grep { not $self->{deps}{$_} } keys %{ $self->{deps} };
+       my @load = grep !$self->{deps}{$_}, keys %{ $self->{deps} };
        my %in_load; @in_load{@load} = ();
        foreach my $d (@load) {
-               my $dep = load ($d);
-               $self->{deps}{$d} = $dep;
-               if ($dep->{deps}) {
-                       foreach my $childdep (@{ $dep->{deps} }) {
-                               push @load, $childdep
-                                       unless
-                                               $self->{deps}{$childdep}
-                                       or
-                                               exists $in_load{$childdep};
-                       }
-               }
+               $self->{deps}{$d} = my $dep = load($d);
+               my @new_deps = grep !($self->{deps}{$_} || exists $in_load{$_}),
+                       @{ $dep->{deps} || [] };
+               push @load, @new_deps;
+               @in_load{@new_deps} = ();
        }
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]