| Filename | /Users/ap13/pathogens/Roary/lib/Bio/Roary/ParseGFFAnnotationRole.pm |
| Statements | Executed 57 statements in 594µs |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 16 | 2 | 2 | 364µs | 1.10ms | Bio::Roary::ParseGFFAnnotationRole::_gff_fh_input_string |
| 8 | 1 | 1 | 86µs | 118µs | Bio::Roary::ParseGFFAnnotationRole::_build__awk_filter |
| 1 | 1 | 1 | 32µs | 3.12ms | Bio::Roary::ParseGFFAnnotationRole::BEGIN@10 |
| 1 | 1 | 1 | 7µs | 7µs | Bio::Roary::ParseGFFAnnotationRole::BEGIN@11 |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | package Bio::Roary::ParseGFFAnnotationRole; | ||||
| 2 | |||||
| 3 | # ABSTRACT: A role for parsing a gff file efficiently | ||||
| 4 | |||||
| 5 | =head1 SYNOPSIS | ||||
| 6 | |||||
| 7 | with 'Bio::Roary::ParseGFFAnnotationRole'; | ||||
| 8 | |||||
| 9 | =cut | ||||
| 10 | 2 | 38µs | 2 | 6.21ms | # spent 3.12ms (32µs+3.09) within Bio::Roary::ParseGFFAnnotationRole::BEGIN@10 which was called:
# once (32µs+3.09ms) by Module::Runtime::require_module at line 10 # spent 3.12ms making 1 call to Bio::Roary::ParseGFFAnnotationRole::BEGIN@10
# spent 3.09ms making 1 call to Moose::Role::import |
| 11 | 2 | 143µs | 1 | 7µs | # spent 7µs within Bio::Roary::ParseGFFAnnotationRole::BEGIN@11 which was called:
# once (7µs+0s) by Module::Runtime::require_module at line 11 # spent 7µs making 1 call to Bio::Roary::ParseGFFAnnotationRole::BEGIN@11 |
| 12 | |||||
| 13 | 1 | 2µs | 1 | 159µs | has 'gff_file' => ( is => 'ro', isa => 'Str', required => 1 ); # spent 159µs making 1 call to Moose::Role::has |
| 14 | |||||
| 15 | 1 | 1µs | 1 | 104µs | has '_tags_to_filter' => ( is => 'ro', isa => 'Str', default => '(CDS|ncRNA|tRNA|tmRNA)' ); # spent 104µs making 1 call to Moose::Role::has |
| 16 | 1 | 2µs | 1 | 92µs | has '_gff_parser' => ( is => 'ro', isa => 'Bio::Tools::GFF', lazy => 1, builder => '_build__gff_parser' ); # spent 92µs making 1 call to Moose::Role::has |
| 17 | 1 | 1µs | 1 | 91µs | has '_awk_filter' => ( is => 'ro', isa => 'Str', lazy => 1, builder => '_build__awk_filter' ); # spent 91µs making 1 call to Moose::Role::has |
| 18 | |||||
| 19 | # spent 1.10ms (364µs+732µs) within Bio::Roary::ParseGFFAnnotationRole::_gff_fh_input_string which was called 16 times, avg 68µs/call:
# 8 times (224µs+365µs) by Bio::Roary::ContigsToGeneIDsFromGFF::_build_contig_to_ids at line 35 of lib/Bio/Roary/ContigsToGeneIDsFromGFF.pm, avg 74µs/call
# 8 times (140µs+367µs) by Bio::Roary::GeneNamesFromGFF::_build_ids_to_gene_name at line 30 of lib/Bio/Roary/GeneNamesFromGFF.pm, avg 63µs/call | ||||
| 20 | 16 | 15µs | my ($self) = @_; | ||
| 21 | 16 | 319µs | 32 | 732µs | return 'sed -n \'/##gff-version 3/,/##FASTA/p\' '.$self->gff_file.'| grep -v \'##FASTA\''." | " . $self->_awk_filter; # spent 283µs making 8 calls to Bio::Roary::ContigsToGeneIDsFromGFF::_awk_filter, avg 35µs/call
# spent 282µs making 8 calls to Bio::Roary::GeneNamesFromGFF::_awk_filter, avg 35µs/call
# spent 85µs making 8 calls to Bio::Roary::GeneNamesFromGFF::gff_file, avg 11µs/call
# spent 82µs making 8 calls to Bio::Roary::ContigsToGeneIDsFromGFF::gff_file, avg 10µs/call |
| 22 | } | ||||
| 23 | |||||
| 24 | # spent 118µs (86+32) within Bio::Roary::ParseGFFAnnotationRole::_build__awk_filter which was called 8 times, avg 15µs/call:
# 8 times (86µs+32µs) by Bio::Roary::GeneNamesFromGFF::_awk_filter at line 12 of (eval 25)[Eval/Closure.pm:125], avg 15µs/call | ||||
| 25 | 8 | 7µs | my ($self) = @_; | ||
| 26 | return | ||||
| 27 | 8 | 53µs | 8 | 32µs | 'awk \'BEGIN {FS="\t"};{ if ($3 ~/' # spent 32µs making 8 calls to Bio::Roary::GeneNamesFromGFF::_tags_to_filter, avg 4µs/call |
| 28 | . $self->_tags_to_filter | ||||
| 29 | . '/) print $9;}\' '; | ||||
| 30 | } | ||||
| 31 | |||||
| 32 | 1 | 13µs | 1; |