Bio-Palantir
view release on metacpan or search on metacpan
lib/Bio/Palantir/Roles/Modulable/Module.pm view on Meta::CPAN
package Bio::Palantir::Roles::Modulable::Module;
$Bio::Palantir::Roles::Modulable::Module::VERSION = '0.211420';
use Moose;
use namespace::autoclean;
use aliased 'Bio::Palantir::Parser::Domain';
use aliased 'Bio::Palantir::Refiner::DomainPlus';
# private attributes
has 'uui' => (
is => 'ro',
isa => 'Str',
init_arg => undef,
default => sub {
my $self = shift;
my $ug = Data::UUID->new;
my $uui = $ug->create_str();
return $uui;
}
);
has 'rank' => (
is => 'ro',
isa => 'Num',
default => -1,
writer => '_set_rank',
);
has $_ => (
is => 'ro',
isa => 'Str',
) for qw(protein_sequence cumulative_protein_sequence);
has $_ => (
is => 'ro',
isa => 'ArrayRef',
) for qw(gene_uuis genomic_prot_coordinates);
has $_ => (
is => 'ro',
isa => 'Num',
) for qw(genomic_prot_begin genomic_prot_end size);
# public array(s) of composed objects
has 'domains' => (
traits => ['Array'],
is => 'ro',
isa => 'ArrayRef', # possible to make a link with the role domainable?
handles => {
count_domains => 'count',
all_domains => 'elements',
get_domain => 'get',
next_domain => 'shift',
},
);
## no critic (ProhibitUnusedPrivateSubroutines)
( run in 1.201 second using v1.01-cache-2.11-cpan-39bf76dae61 )