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   64245 use strict;
  6         23  
  6         149  
3 6     6   35 use warnings;
  6         11  
  6         227  
4             { our $VERSION = '0.009'; }
5              
6 6     6   31 use Scalar::Util qw< weaken >;
  6         19  
  6         1735  
7              
8             sub clone {
9 1     1 1 30 my $self = shift;
10 1         7 return ref($self)->new($self);
11             }
12              
13             sub get {
14 1     1 1 691 my ($self, $key) = @_;
15 1         4 return $self->{$key};
16             }
17              
18             sub get_multiple {
19 1     1 1 867 my $self = shift;
20 1         2 return @{$self}{@_};
  1         5  
21             }
22              
23             sub new {
24 8     8 1 1006 my $package = shift;
25 8         21 my $self = bless {}, $package;
26 8         29 return $self->set(@_);
27             }
28              
29             sub set {
30 26     26 1 1504 my $self = shift;
31 26 100 100     142 my @args = (@_ && ref($_[0])) ? %{$_[0]} : @_;
  1         4  
32 26         55 while (@args) {
33 23         50 my ($key, $value) = splice @args, 0, 2;
34 23         48 $self->{$key} = $value;
35 23 50       88 weaken($self->{$key}) if ref $value;
36             }
37 26         60 return $self;
38             } ## end sub set
39              
40 1     1 1 2418 sub TO_JSON { return undef }
41              
42             1;