/usr/share/doc/libclass-insideout-perl/examples/Animal.pm is in libclass-insideout-perl 1.13-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 | package t::Object::Animal;
use strict;
use Class::InsideOut;
use Scalar::Util qw( refaddr );
Class::InsideOut::options(
{
privacy => 'public',
}
);
Class::InsideOut::property( nickname => my %nickname ); #20997: Duplicate property name
Class::InsideOut::property( name => my %name );
Class::InsideOut::property( species => my %species );
Class::InsideOut::property( Genus => my %genus );
# Globals for testing
use vars qw( $animal_count @subclass_errors $freezings $thawings );
sub new {
my $class = shift;
my $self = bless \do {my $s}, $class;
Class::InsideOut::register($self);
$name{ refaddr $self } = undef;
$species{ refaddr $self } = undef;
$animal_count++;
return $self;
}
sub DEMOLISH {
my $self = shift;
$animal_count--;
if ( ref $self ne "t::Object::Animal" ) {
push @subclass_errors, ref $self;
}
}
sub FREEZE {
my $self = shift;
$freezings++;
}
sub THAW {
my $self = shift;
$thawings++;
}
1;
|