package Monks;
use strict;
use warnings;
use Monks::Data;
BEGIN {
use Exporter;
our $VERSION = 0.01;
our @ISA = qw(Exporter);
}
sub version { $Monks::VERSION }
sub new {
my $class = shift;
my $self = { @_ };
bless $self, $class;
return $self;
};
sub check_fluffy {
my $self = shift;
return 'Yes' if (grep /$_[0]/, @Monks::Data::Fluffy);
return 'No';
}
sub find_fur_texture {
my $self = shift;
return "$Monks::Data::Textures{$_[0]}" if (defined $Monks::Data::Textures{$_[0]});
}
1;
####
package Monks::Data;
use strict;
use warnings;
use parent 'Monks';
BEGIN {
use Exporter ();
our $VERSION = 20160808.00;
our @ISA = qw(Exporter);
}
sub version { $Monks::Data::VERSION; }
our @Fluffy = qw(Rabbits Minks Cats);
our %Textures = ( Rabbits => 'soft',
Minks => 'supersoft',
Cats => 'coarse',
);
1;
####
#!/usr/bin/perl
use strict;
use warnings;
use Monks;
my $object = Monks->new;
for my $animals ( qw(Cats Alligators Rabbits) ) {
print "Checking if $animals are furry:\n";
print $object->check_fluffy("$animals"), "\n\n";
}
print "Fur texture for Cats: ", $object->find_fur_texture('Cats'), "\n";
exit 0;
####
Checking if Cats are furry:
Yes
Checking if Alligators are furry:
No
Checking if Rabbits are furry:
Yes
Fur texture for Cats: coarse