/usr/share/perl5/Parse/Win32Registry/File.pm is in libparse-win32registry-perl 1.0-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | package Parse::Win32Registry::File;
use strict;
use warnings;
sub get_filehandle {
my $self = shift;
return $self->{_filehandle};
}
sub get_filename {
my $self = shift;
return $self->{_filename};
}
sub get_length {
my $self = shift;
return $self->{_length};
}
sub get_entry_iterator {
my $self = shift;
my $entry_iter;
my $block_iter = $self->get_block_iterator;
return Parse::Win32Registry::Iterator->new(sub {
while (1) {
if (defined $entry_iter) {
my $entry = $entry_iter->();
if (defined $entry) {
return $entry;
}
}
# entry iterator is undefined or finished
my $block = $block_iter->();
if (!defined $block) {
return; # block iterator finished
}
$entry_iter = $block->get_entry_iterator;
}
});
}
# method provided for backwards compatibility
sub move_to_first_entry {
my $self = shift;
$self->{_entry_iter} = undef;
}
# method provided for backwards compatibility
sub get_next_entry {
my $self = shift;
my $entry_iter = $self->{_entry_iter};
if (!defined $entry_iter) {
$self->{_entry_iter} = $entry_iter = $self->get_entry_iterator;
}
return $entry_iter->();
}
1;
|