File Coverage

blib/lib/Bot/ChatBots/Weak.pm
Criterion Covered Total %
statement 28 28 100.0
branch 3 4 75.0
condition 3 3 100.0
subroutine 9 9 100.0
pod 6 6 100.0
total 49 50 98.0


line stmt bran cond sub pod time code
1             package Bot::ChatBots::Weak;
2 6     6   35293 use strict;
  6         11  
  6         194  
3 6     6   23 use warnings;
  6         8  
  6         288  
4             { our $VERSION = '0.006'; }
5              
6 6     6   26 use Scalar::Util qw< weaken >;
  6         10  
  6         1664  
7              
8             sub clone {
9 1     1 1 23 my $self = shift;
10 1         4 return ref($self)->new($self);
11             }
12              
13             sub get {
14 1     1 1 559 my ($self, $key) = @_;
15 1         5 return $self->{$key};
16             }
17              
18             sub get_multiple {
19 1     1 1 1249 my $self = shift;
20 1         2 return @{$self}{@_};
  1         6  
21             }
22              
23             sub new {
24 8     8 1 827 my $package = shift;
25 8         17 my $self = bless {}, $package;
26 8         40 return $self->set(@_);
27             }
28              
29             sub set {
30 26     26 1 1228 my $self = shift;
31 26 100 100     134 my @args = (@_ && ref($_[0])) ? %{$_[0]} : @_;
  1         6  
32 26         76 while (@args) {
33 23         52 my ($key, $value) = splice @args, 0, 2;
34 23         66 $self->{$key} = $value;
35 23 50       123 weaken($self->{$key}) if ref $value;
36             }
37 26         93 return $self;
38             } ## end sub set
39              
40 1     1 1 2770 sub TO_JSON { return undef }
41              
42             1;