File Coverage

blib/lib/Storable/AMF/Mapper.pm
Criterion Covered Total %
statement 18 21 85.7
branch 5 8 62.5
condition n/a
subroutine 4 4 100.0
pod 0 1 0.0
total 27 34 79.4


line stmt bran cond sub pod time code
1             #===============================================================================
2             #
3             # FILE: Mapper.pm
4             #
5             # BUGS: ---
6             # NOTES: ---
7             # AUTHOR: Grishayev Anatoliy (),
8             # COMPANY:
9             # VERSION: 1.0
10             # CREATED: 01/24/2011 02:36:47 PM
11             # REVISION: ---
12             #===============================================================================
13             package Storable::AMF::Mapper;
14 3     3   1384 use strict;
  3         3  
  3         75  
15 3     3   339 use Storable::AMF qw(parse_serializator_option);
  3         5  
  3         147  
16 3     3   10 use Carp qw(croak);
  3         3  
  3         409  
17              
18             sub new{
19 4     4 0 14081 my $class = shift;
20 4 50       20 if ( @_ % 2 ){
21 0         0 croak( "Usage Storable::AMF::Mapper->new( to_amf => 0 | 1, option => ...)");
22             }
23 4         8 my %options = @_;
24 4         29 my $option_int = parse_serializator_option( 'prefer_number');
25 4 50       9 if ( my $option_str = delete $options{ option } ){
26 0         0 $option_int = parse_serializator_option( $option_str );
27             }
28 4 100       10 if ( delete $options{ to_amf } ){
29 3         6 $option_int |= 128 ;
30             }
31 4 50       11 if (keys %options ){
32 0         0 croak( "Unknown option: ". join (" ", keys %options ));
33             }
34 4         16 return $option_int;
35             }
36              
37             1;
38             __END__