File Coverage

blib/lib/OBO/Util/InstanceSet.pm
Criterion Covered Total %
statement 21 21 100.0
branch 5 6 83.3
condition n/a
subroutine 5 5 100.0
pod 2 2 100.0
total 33 34 97.0


line stmt bran cond sub pod time code
1             # $Id: InstanceSet.pm 2014-06-06 erick.antezana $
2             #
3             # Module : InstanceSet.pm
4             # Purpose : Instance set.
5             # License : Copyright (c) 2006-2015 by Erick Antezana. All rights reserved.
6             # This program is free software; you can redistribute it and/or
7             # modify it under the same terms as Perl itself.
8             # Contact : Erick Antezana
9             #
10             package OBO::Util::InstanceSet;
11              
12             our @ISA = qw(OBO::Util::ObjectSet);
13 13     13   8619 use OBO::Util::ObjectSet;
  13         26  
  13         318  
14              
15 13     13   64 use strict;
  13         21  
  13         260  
16 13     13   66 use warnings;
  13         127  
  13         2075  
17              
18             =head2 contains_id
19              
20             Usage - $set->contains_id($element_id)
21             Returns - true if this set contains an element with the given ID
22             Args - the ID to be checked
23             Function - checks if this set constains an element with the given ID
24            
25             =cut
26              
27             sub contains_id {
28 2     2 1 5 my ($self, $id) = @_;
29 2 100       26 return ($self->{MAP}->{$id})?1:0;
30             }
31              
32             =head2 contains_name
33              
34             Usage - $set->contains_name($element_name)
35             Returns - true if this set contains an element with the given name
36             Args - the name to be checked
37             Function - checks if this set constains an element with the given name
38            
39             =cut
40              
41             sub contains_name {
42 2     2 1 5 my $self = shift;
43 2         2 my $result = 0;
44 2 50       6 if (@_) {
45 2         4 my $term_id = shift;
46            
47 2         3 foreach my $ele (sort values %{$self->{MAP}}){
  2         20  
48 12 100       31 if ($ele->name() eq $term_id) {
49 1         1 $result = 1;
50 1         3 last;
51             }
52             }
53             }
54 2         7 return $result;
55             }
56              
57             1;
58              
59             __END__