933 |
|
|
934 |
my ( $new_r, $from_count, $to_count ); |
my ( $new_r, $from_count, $to_count ); |
935 |
foreach my $sf ( keys %{$r} ) { |
foreach my $sf ( keys %{$r} ) { |
936 |
|
# skip everything which isn't one char subfield (e.g. 'subfields') |
937 |
|
next unless $sf =~ m/^\w$/; |
938 |
my $nr = $from_count->{$sf}++; |
my $nr = $from_count->{$sf}++; |
939 |
my $rename_to = $subfields_rename->{ $sf }; # || |
my $rename_to = $subfields_rename->{ $sf } || |
940 |
# die "can't find subfield rename for $sf/$nr in ", dump( $subfields_rename ); |
die "can't find subfield rename for $sf/$nr in ", dump( $subfields_rename ); |
941 |
warn "### rename $sf/$nr to ", dump( $rename_to->[$nr] ), $/; |
warn "### rename $sf/$nr to ", dump( $rename_to->[$nr] ), $/; |
942 |
my ( $to_sf, $to_nr ) = @{ $rename_to->[$nr] }; |
my ( $to_sf, $to_nr ) = @{ $rename_to->[$nr] }; |
943 |
$new_r->{ $to_sf }->[ $to_nr ] = [ $sf => $nr ]; |
$new_r->{ $to_sf }->[ $to_nr ] = [ $sf => $nr ]; |