Branch Coverage

blib/lib/MEME/Alphabet.pm
Criterion Covered Total %
branch 123 316 38.9


line true false branch
97 0 5 if (defined $file)
99 0 0 if (@{$self->{'errors'};})
113 0 0 if $self->{'line_no'}
114 0 0 if $self->{'file_name'}
121 0 4 if $self->{'parsed'}
122 0 4 if $self->{'seen_header'}
123 0 4 if $self->{'seen_symbol'}
124 0 4 if $like and not $like =~ /^(RNA|DNA|PROTEIN)$/iu
126 4 0 $like ? :
138 0 92 if $self->{'parsed'}
139 0 0 unless $self->{'seen_header'} or $self->{'seen_symbol'}
140 0 92 if (defined $self->{'sym_lookup'}{$sym})
144 16 76 if $sym ge 'a' and $sym le 'z'
145 60 32 if $sym ge 'A' and $sym le 'Z'
147 8 84 if (defined $aliases)
150 60 32 if (defined $comprise) { }
156 0 160 if (not defined $csym) { }
0 160 elsif (defined $csym->{'comprise'}) { }
165 0 60 if ($sym eq '?' and length $symbol->{'comprise'} < scalar @{$self->{'core_syms'};})
169 0 32 if $sym eq '?'
170 0 32 if $self->{'seen_ambig'}
180 0 0 if $self->{'parsed'}
184 0 0 unless $line =~ /\S/u
185 0 0 if ($line =~ /$HEADER_RE/u) { }
0 0 elsif ($line =~ /$CORE_PAIR_RE/u) { }
0 0 elsif ($line =~ /$CORE_SINGLE_RE/u) { }
0 0 elsif ($line =~ /$AMBIG_RE/u) { }
202 36 70 if ($both_case)
203 34 2 if ($character ge 'A' and $character le 'Z') { }
0 4 elsif ($character ge 'a' and $character le 'z') { }
213 0 4 if $self->{'parsed'}
218 2 2 if (scalar @{$self->{'ambig_syms'};} == 0 or length $self->{'ambig_syms'}[0]{'comprise'} != scalar @{$self->{'core_syms'};})
239 0 62 if (defined $real) { }
261 0 32 unless (defined $sym->{'complement'})
272 0 184 unless defined $target
277 0 62 unless defined $complement
300 22 40 if ($both_case and $prime_sym =~ /^[A-Za-z]$/u)
307 2 6 if ($both_case and $alias_sym =~ /^[A-Za-z]$/u)
327 8 24 if ($both_case and $prime_sym =~ /^[A-Za-z]$/u)
338 2 2 if ($both_case and $alias_sym =~ /^[A-Za-z]$/u)
356 22 40 if ($both_case and $prime_sym =~ /^[A-Za-z]$/u)
367 2 6 if ($both_case and $alias_sym =~ /^[A-Za-z]$/u)
386 58 4 if ($i != $self->{'ncore'})
391 22 40 if ($both_case and $prime_sym =~ /^[A-Za-z]$/u)
402 2 6 if ($both_case and $alias_sym =~ /^[A-Za-z]$/u)
418 140 236 if (defined $self->{'lookup'}{chr $i})
419 38 102 if ($i > $range_start + 1) { }
12 90 elsif ($i == $range_start + 1) { }
428 0 4 $wildcard eq '-' || $wildcard eq '/' ? :
432 4 0 if ($self->{'like'})
434 0 4 if ($self->{'like'} eq 'RNA') { }
4 0 elsif ($self->{'like'} eq 'DNA') { }
0 0 elsif ($self->{'like'} eq 'PROTEIN') { }
445 4 0 if (defined $req_core)
449 0 16 unless (defined $symobj)
452 0 16 unless ($symobj->{'index'} < $self->{'ncore'})
455 16 0 if (defined $req_comp) { }
458 0 16 unless (defined $compobj or not defined $symobj->{'complement'} || $symobj->{'complement'} != $compobj)
475 0 0 if $self->{'parsed'}
491 0 0 if (defined $sym->{'name'})
495 0 0 if (defined $sym->{'colour'})
507 0 0 unless defined $options{'print_header'}
508 0 0 unless defined $options{'print_footer'}
510 0 0 if ($options{'print_header'})
512 0 0 $self->{'like'} ? :
518 0 0 if (defined $csym and $sym->{'index'} < $csym->{'index'})
525 0 0 unless (defined $sym->{'complement'})
532 0 0 if (scalar @{$sym->{'comprise'};} == 0)
553 0 0 if ($gap)
560 0 0 if ($options{'print_footer'})
571 0 0 if $self->{'like'}
579 0 0 if scalar @{$sym->{'aliases'};} > 0
580 0 0 if defined $sym->{'name'}
581 0 0 if defined $sym->{'colour'} and $sym->{'colour'} > 0
582 0 0 if ($i < $self->{'ncore'}) { }
583 0 0 if defined $sym->{'complement'}
610 0 0 if ($should_encode) { }
619 0 5 unless $self->{'parsed'}
638 5 1 if (wantarray) { }
655 0 0 unless ($self->is_core($sym))
689 20 42 if ($self->is_core($sym))
758 0 0 if $index < 0 or $index > scalar @{$self->{'syms'};}
771 0 0 unless defined $sym
784 0 0 unless defined $sym
796 0 0 if (defined $sym->{'comprise'}) { }
815 0 0 if (defined $sym) { }
832 0 0 unless ($set->{$a})
848 0 0 if ($seq =~ /($not_valid)/u) { }
860 0 1 unless $self->has_complement
880 0 0 defined $options{'NO_ALIASES'} ? :
881 0 0 defined $options{'NO_AMBIGS'} ? :
882 0 0 defined $options{'NO_UNKNOWN'} ? :
884 0 0 if ($no_aliases) { }
0 0 elsif ($no_ambigs) { }
887 0 0 if ($no_ambigs) { }
898 0 0 if ($no_unknown)
935 0 2 if $self->size_core != $other->size_core
936 0 2 if $self->size_full != $other->size_full
937 0 2 if $self->has_complement != $other->has_complement
938 0 2 if defined $self->{'name'} != defined $other->{'name'}
939 2 0 if (defined $self->{'name'} and defined $other->{'name'})
940 0 2 if $self->{'name'} ne $other->{'name'}
946 0 47 if $self_sym->{'sym'} ne $other_sym->{'sym'}
947 0 47 if defined $self_sym->{'name'} != defined $other_sym->{'name'}
948 46 1 if (defined $self_sym->{'name'} and defined $other_sym->{'name'})
949 0 46 if $self_sym->{'name'} ne $other_sym->{'name'}
951 0 47 if defined $self_sym->{'colour'} != defined $other_sym->{'colour'}
952 16 31 if (defined $self_sym->{'colour'} and defined $other_sym->{'colour'})
953 0 16 if $self_sym->{'colour'} != $other_sym->{'colour'}
955 0 47 if scalar @{$self_sym->{'aliases'};} != scalar @{$other_sym->{'aliases'};}
958 0 6 if $self_sym->{'aliases'}[$j] ne $other_sym->{'aliases'}[$j]
965 0 16 if defined $self_sym->{'complement'} != defined $other_sym->{'complement'}
966 16 0 if (defined $self_sym->{'complement'} and defined $other_sym->{'complement'})
967 0 16 if $self_sym->{'complement'}{'sym'} ne $other_sym->{'complement'}{'sym'}
974 0 31 if scalar @{$self_sym->{'comprise'};} != scalar @{$other_sym->{'comprise'};}
976 0 92 if $self_sym->{'comprise'}[$j]{'sym'} ne $other_sym->{'comprise'}[$j]{'sym'}
984 1 0 unless defined $self->{'cached_is_dna'}
990 1 0 unless defined $self->{'cached_is_moddna'}
996 0 0 unless defined $self->{'cached_is_rna'}
1002 0 0 unless defined $self->{'cached_is_protein'}
1012 0 0 unless defined $text
1048 0 0 unless defined $text
1059 470 56 if (length $a == length $b) { }
14 42 elsif (length $a > length $b) { }
1068 438 66 if ($is_letter_a) { }
18 48 elsif ($is_letter_b) { }
1069 394 44 if ($is_letter_b) { }
1070 168 226 if ($sym_a < $sym_b) { }
192 34 elsif ($sym_b < $sym_a) { }
1087 48 0 if ($is_num_a) { }
0 0 elsif ($is_num_b) { }
1088 48 0 if ($is_num_b) { }
1089 16 32 if ($sym_a < $sym_b) { }
32 0 elsif ($sym_b < $sym_a) { }
1103 0 0 if ($sym_a < $sym_b) { }
0 0 elsif ($sym_b < $sym_a) { }
1123 150 66 if (defined $sym1->{'comprise'} and defined $sym2->{'comprise'}) { }
0 66 elsif (defined $sym1->{'comprise'}) { }
0 66 elsif (defined $sym2->{'comprise'}) { }
1125 150 0 if $ret != 0
1134 66 0 if $ret != 0
1137 0 0 if (defined $sym1->{'complement'} and defined $sym2->{'complement'}) { }
0 0 elsif (defined $sym1->{'complement'}) { }
0 0 elsif (defined $sym2->{'complement'}) { }
1139 0 0 if $ret != 0
1147 0 0 if (scalar @{$sym1->{'aliases'};} != scalar @{$sym2->{'aliases'};})
1153 0 0 if $ret != 0
1157 0 0 if (defined $sym1->{'name'} and defined $sym2->{'name'}) { }
0 0 elsif (defined $sym1->{'name'}) { }
0 0 elsif (defined $sym2->{'name'}) { }
1159 0 0 if $ret != 0
1167 0 0 if (defined $sym1->{'colour'} and defined $sym2->{'colour'}) { }
0 0 elsif (defined $sym1->{'colour'}) { }
0 0 elsif (defined $sym2->{'colour'}) { }
1208 0 0 if $alph->has_errors
1263 0 2 if $alph->has_errors
1303 0 2 if $alph->has_errors
1348 0 0 if $alph->has_errors