chiark / gitweb /
break out region_cmp nfc
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Mon, 14 Jan 2019 12:48:02 +0000 (12:48 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Mon, 14 Jan 2019 12:48:02 +0000 (12:48 +0000)
parse-input-graph

index 25740c7b1f79a0ad021f9abd1ff58cf48e8edc9c..f9708086ae30282c3ef9c43265dbcbb96ac3fb3e 100755 (executable)
@@ -84,7 +84,13 @@ sub unique_aref ($$) {
   my $r = $found[0][0];
   #print STDERR "resolve $ra -> $adja->{Pattern} = $r\n";
   return $r;
-}   
+}
+
+sub region_cmp {
+  ($a eq 'L' ) <=> ($b eq 'L' ) or
+  ($a eq 'NZ') <=> ($b eq 'NZ') or
+   $a          cmp  $b
+}
 
 sub resolve_arefs () {
   #print Dumper(\%region);
@@ -110,11 +116,7 @@ sub adjacencies () {
   foreach my $ra (sort keys %region) {
     foreach my $adja (@{ $region{$ra}{Adj} }) {
       my $rb = $adja->{Name};
-      my ($r0,$r1) = sort {
-       ($a eq 'L' ) <=> ($b eq 'L' ) or
-       ($a eq 'NZ') <=> ($b eq 'NZ') or
-        $a          cmp  $b
-      } ($ra,$rb);
+      my ($r0,$r1) = sort region_cmp ($ra,$rb);
       push @{ $adj{$r0}{$r1}{L} }, $adja->{L};
       my $e = $adj{$r0}{$r1};
       $e->{Dikes} //= $adja->{Dikes};