File Coverage

blib/lib/BSON/Bool.pm
Criterion Covered Total %
statement 18 21 85.7
branch 2 4 50.0
condition n/a
subroutine 8 10 80.0
pod 2 5 40.0
total 30 40 75.0


line stmt bran cond sub pod time code
1 71     71   26210 use 5.010001;
  71         248  
2 71     71   356 use strict;
  71         130  
  71         1352  
3 71     71   329 use warnings;
  71         136  
  71         2205  
4              
5             package BSON::Bool;
6             # ABSTRACT: Legacy BSON type wrapper for Booleans (DEPRECATED)
7              
8 71     71   356 use version;
  71         148  
  71         289  
9             our $VERSION = 'v1.12.1';
10              
11 71     71   5886 use boolean 0.45 ();
  71         1589  
  71         14005  
12             our @ISA = qw/boolean/;
13              
14             sub new {
15 9189     9189 0 190887 my ( $class, $bool ) = @_;
16 9189 100       37127 return bless \(my $dummy = $bool ? 1 : 0), $class;
17             }
18              
19             sub value {
20 0 0   0 0 0 ${$_[0]} ? 1 : 0;
  0         0  
21             }
22              
23             sub true {
24 4     4 1 5164 return $_[0]->new(1);
25             }
26              
27             sub false {
28 4     4 1 15 return $_[0]->new(0);
29             }
30              
31             sub op_eq {
32 0     0 0   return !! $_[0] == !! $_[1];
33             }
34              
35             1;
36              
37             =pod
38              
39             =encoding UTF-8
40              
41             =head1 NAME
42              
43             BSON::Bool - Legacy BSON type wrapper for Booleans (DEPRECATED)
44              
45             =head1 VERSION
46              
47             version v1.12.1
48              
49             =head1 DESCRIPTION
50              
51             This module has been deprecated as it was not compatible with
52             other common boolean implementations on CPAN.
53              
54             You are strongly encouraged to use L directly instead.
55              
56             =for Pod::Coverage new value true false op_eq
57              
58             =head1 AUTHORS
59              
60             =over 4
61              
62             =item *
63              
64             David Golden
65              
66             =item *
67              
68             Stefan G.
69              
70             =back
71              
72             =head1 COPYRIGHT AND LICENSE
73              
74             This software is Copyright (c) 2019 by Stefan G. and MongoDB, Inc.
75              
76             This is free software, licensed under:
77              
78             The Apache License, Version 2.0, January 2004
79              
80             =cut
81              
82             __END__