blib/lib/Megaport/Internal/_Obj.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
statement | 8 | 18 | 44.4 |
branch | 0 | 4 | 0.0 |
condition | n/a | ||
subroutine | 3 | 8 | 37.5 |
pod | 0 | 2 | 0.0 |
total | 11 | 32 | 34.3 |
line | stmt | bran | cond | sub | pod | time | code |
---|---|---|---|---|---|---|---|
1 | package Megaport::Internal::_Obj; | ||||||
2 | |||||||
3 | 3 | 3 | 23 | use 5.10.0; | |||
3 | 7 | ||||||
4 | 3 | 3 | 10 | use strict; | |||
3 | 3 | ||||||
3 | 45 | ||||||
5 | 3 | 3 | 6 | use warnings; | |||
3 | 4 | ||||||
3 | 525 | ||||||
6 | |||||||
7 | our $AUTOLOAD; | ||||||
8 | |||||||
9 | sub new { | ||||||
10 | 0 | 0 | 0 | my ($class, %hash) = @_; | |||
11 | |||||||
12 | 0 | bless \%hash, $class; | |||||
13 | } | ||||||
14 | |||||||
15 | sub AUTOLOAD { | ||||||
16 | 0 | 0 | my ($self) = @_; | ||||
17 | 0 | my $command = $AUTOLOAD; | |||||
18 | 0 | $command =~ s/.*://; | |||||
19 | |||||||
20 | 0 | 0 | if ($self->can($command)) { | ||||
21 | 0 | $self->{$command}; | |||||
22 | } | ||||||
23 | } | ||||||
24 | |||||||
25 | sub can { | ||||||
26 | 0 | 0 | 0 | my ($self, $field) = @_; | |||
27 | |||||||
28 | return sub { | ||||||
29 | 0 | 0 | $self->{$field} | ||||
30 | 0 | 0 | } if $self->{$field}; | ||||
31 | } | ||||||
32 | |||||||
33 | 0 | sub DESTROY { } | |||||
34 | |||||||
35 | 1; | ||||||
36 | __END__ |