line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
package CBOR::Free::Decoder::Base; |
2
|
|
|
|
|
|
|
|
3
|
7
|
|
|
7
|
|
3069
|
use strict; |
|
7
|
|
|
|
|
17
|
|
|
7
|
|
|
|
|
202
|
|
4
|
7
|
|
|
7
|
|
39
|
use warnings; |
|
7
|
|
|
|
|
14
|
|
|
7
|
|
|
|
|
1385
|
|
5
|
|
|
|
|
|
|
|
6
|
|
|
|
|
|
|
sub set_tag_handlers { |
7
|
106
|
|
|
106
|
0
|
71956
|
my ($self, @tag_kv) = @_; |
8
|
|
|
|
|
|
|
|
9
|
106
|
100
|
|
|
|
357
|
die "Uneven tag handlers list given!" if @tag_kv % 2; |
10
|
|
|
|
|
|
|
|
11
|
105
|
|
|
|
|
208
|
my @tag_kv_copy = @tag_kv; |
12
|
|
|
|
|
|
|
|
13
|
105
|
|
|
|
|
473
|
while ( my ($tag, $cr) = splice @tag_kv ) { |
14
|
105
|
100
|
|
|
|
638
|
die "Invalid tag: $tag" if $tag !~ m<\A[0-9]+\z>; |
15
|
104
|
100
|
100
|
|
|
715
|
die "Invalid tag $tag handler: $cr" if defined($cr) && !UNIVERSAL::isa($cr, 'CODE'); |
16
|
|
|
|
|
|
|
} |
17
|
|
|
|
|
|
|
|
18
|
103
|
|
|
|
|
472
|
$self->_set_tag_handlers_backend(@tag_kv_copy); |
19
|
|
|
|
|
|
|
|
20
|
103
|
|
|
|
|
238
|
return $self; |
21
|
|
|
|
|
|
|
} |
22
|
|
|
|
|
|
|
|
23
|
|
|
|
|
|
|
1; |