File-Marker

 view release on metacpan or  search on metacpan

lib/File/Marker.pm  view on Meta::CPAN

# CLONE()
#--------------------------------------------------------------------------#

sub CLONE {
    for my $old_id ( keys %REGISTRY ) {

        # look under old_id to find the new, cloned reference
        my $object = $REGISTRY{$old_id};
        my $new_id = refaddr $object;

        # relocate data
        $MARKS{$new_id} = $MARKS{$old_id};
        delete $MARKS{$old_id};

        # update the weak reference to the new, cloned object
        weaken( $REGISTRY{$new_id} = $object );
        delete $REGISTRY{$old_id};
    }

    return;
}



( run in 3.620 seconds using v1.01-cache-2.11-cpan-71847e10f99 )