chiark / gitweb /
nailing-cargo: Break out get_dependency_tables
[nailing-cargo.git] / nailing-cargo
index f015b894ce70ebf9ecb98bd4aafdea58866f8e5d..512e55916ee2da7af03b872560565ebc4dad2a99 100755 (executable)
@@ -239,6 +239,17 @@ sub readnail () {
   unshift @configs, $nail;
 }
 
+sub get_dependency_tables ($) {
+  my ($toml) = @_;
+  my @keys = qw(dependencies build-dependencies dev-dependencies);
+  my @r;
+  foreach my $k (@keys) {
+    my $deps = $toml->{$k};
+    push @r, $deps if $deps;
+  }
+  @r;
+}
+
 our @alt_cargo_lock_stat;
 
 sub consider_alt_cargo_lock () {
@@ -423,8 +434,7 @@ sub calculate () {
   }
   foreach my $mf (keys %manifests) {
     my $toml = $manifests{$mf};
-    foreach my $k (qw(dependencies build-dependencies dev-dependencies)) {
-      my $deps = $toml->{$k};
+    foreach my $deps (get_dependency_tables $toml) {
       next unless $deps;
       foreach my $p (keys %packagemap) {
        my $info = $deps->{$p};