@@ -714,40 +714,40 @@ sub __position {
714
714
715
715
# Insert one or more elements before a child
716
716
sub __insert_before_child {
717
- my $self = shift ;
718
- my $key = refaddr shift ;
717
+ my ( $self , $child , @insertions ) = @_ ;
718
+ my $key = refaddr $child ;
719
719
my $p = List::Util::first {
720
720
refaddr $self -> {children }[$_ ] == $key
721
721
} 0..$# {$self -> {children }};
722
- foreach ( @_ ) {
722
+ foreach ( @insertions ) {
723
723
Scalar::Util::weaken(
724
724
$_PARENT{refaddr $_ } = $self
725
725
);
726
726
}
727
- splice ( @{$self -> {children }}, $p , 0, @_ );
727
+ splice ( @{$self -> {children }}, $p , 0, @insertions );
728
728
1;
729
729
}
730
730
731
731
# Insert one or more elements after a child
732
732
sub __insert_after_child {
733
- my $self = shift ;
734
- my $key = refaddr shift ;
733
+ my ( $self , $child , @insertions ) = @_ ;
734
+ my $key = refaddr $child ;
735
735
my $p = List::Util::first {
736
736
refaddr $self -> {children }[$_ ] == $key
737
737
} 0..$# {$self -> {children }};
738
- foreach ( @_ ) {
738
+ foreach ( @insertions ) {
739
739
Scalar::Util::weaken(
740
740
$_PARENT{refaddr $_ } = $self
741
741
);
742
742
}
743
- splice ( @{$self -> {children }}, $p + 1, 0, @_ );
743
+ splice ( @{$self -> {children }}, $p + 1, 0, @insertions );
744
744
1;
745
745
}
746
746
747
747
# Replace a child
748
748
sub __replace_child {
749
- my $self = shift ;
750
- my $old_child_addr = refaddr shift ;
749
+ my ( $self , $old_child , @replacements ) = @_ ;
750
+ my $old_child_addr = refaddr $old_child ;
751
751
752
752
# Cache parent of new children
753
753
my $old_child_index = List::Util::first {
@@ -756,14 +756,14 @@ sub __replace_child {
756
756
757
757
return undef if !defined $old_child_index ;
758
758
759
- foreach ( @_ ) {
759
+ foreach ( @replacements ) {
760
760
Scalar::Util::weaken(
761
761
$_PARENT{refaddr $_ } = $self
762
762
);
763
763
}
764
764
765
765
# Replace old child with new children
766
- splice ( @{$self -> {children }}, $old_child_index , 1, @_ );
766
+ splice ( @{$self -> {children }}, $old_child_index , 1, @replacements );
767
767
768
768
# Uncache parent of old child
769
769
delete $_PARENT{$old_child_addr };
0 commit comments