File Coverage

blib/lib/Hydrogen/Autobox.pm
Criterion Covered Total %
statement 69 69 100.0
branch 7 14 50.0
condition n/a
subroutine 21 21 100.0
pod n/a
total 97 104 93.2


line stmt bran cond sub pod time code
1 1     1   236050 use 5.008001;
  1         4  
2 1     1   6 use strict;
  1         11  
  1         32  
3 1     1   6 use warnings;
  1         2  
  1         48  
4              
5 1     1   534 use Hydrogen ();
  1         3  
  1         32  
6 1     1   707 use Hydrogen::ArrayRef ();
  1         4  
  1         31  
7 1     1   583 use Hydrogen::CodeRef ();
  1         3  
  1         29  
8 1     1   548 use Hydrogen::Counter ();
  1         4  
  1         35  
9 1     1   619 use Hydrogen::HashRef ();
  1         4  
  1         32  
10 1     1   687 use Hydrogen::Number ();
  1         5  
  1         33  
11 1     1   490 use Hydrogen::Scalar ();
  1         4  
  1         29  
12 1     1   722 use Hydrogen::String ();
  1         3  
  1         37  
13 1     1   703 use Hydrogen::Curry::ArrayRef ();
  1         5  
  1         34  
14 1     1   595 use Hydrogen::Curry::CodeRef ();
  1         4  
  1         34  
15 1     1   502 use Hydrogen::Curry::Counter ();
  1         4  
  1         32  
16 1     1   584 use Hydrogen::Curry::HashRef ();
  1         5  
  1         50  
17 1     1   552 use Hydrogen::Curry::Number ();
  1         4  
  1         32  
18 1     1   544 use Hydrogen::Curry::Scalar ();
  1         4  
  1         33  
19 1     1   624 use Hydrogen::Curry::String ();
  1         5  
  1         32  
20              
21 1     1   741 use autobox ();
  1         15326  
  1         40  
22 1     1   745 use Import::Into ();
  1         3745  
  1         261  
23              
24             package Hydrogen::Autobox;
25              
26             our $AUTHORITY = 'cpan:TOBYINK';
27             our $VERSION = '0.021002';
28              
29             sub import {
30 1     1   11 my ( $class, $also ) = ( shift, @_ );
31 1         3 my $caller = caller;
32            
33             'autobox'->import::into( $caller, {
34 1 50       10 ARRAY => [ 'Hydrogen::ArrayRef', 'Hydrogen::Curry::ArrayRef', @{ $also->{ARRAY} or [] } ],
35 1 50       6 CODE => [ 'Hydrogen::CodeRef', 'Hydrogen::Curry::CodeRef', @{ $also->{CODE} or [] } ],
36 1 50       6 INTEGER => [ 'Hydrogen::Counter', 'Hydrogen::Curry::Counter', @{ $also->{INTEGER} or [] } ],
37 1 50       6 HASH => [ 'Hydrogen::HashRef', 'Hydrogen::Curry::HashRef', @{ $also->{HASH} or [] } ],
38 1 50       7 NUMBER => [ 'Hydrogen::Number', 'Hydrogen::Curry::Number', @{ $also->{NUMBER} or [] } ],
39 1 50       5 SCALAR => [ 'Hydrogen::Scalar', 'Hydrogen::Curry::Scalar', @{ $also->{SCALAR} or [] } ],
40 1 50       3 STRING => [ 'Hydrogen::String', 'Hydrogen::Curry::String', @{ $also->{STRING} or [] } ],
  1         38  
41             } );
42             }
43              
44             1;
45              
46             =head1 NAME
47              
48             Hydrogen::Autobox - provides access to Hydrogen functions via L.
49              
50             =head1 SYNOPSIS
51              
52             use Hydrogen::Autobox;
53             use feature 'say';
54            
55             my $number = 600;
56            
57             $number->add( 66 );
58            
59             if ( $number->eq(666) ) {
60             say "It worked!"
61             }
62              
63             =head1 BUGS
64              
65             Please report any bugs to
66             L.
67              
68             =head1 SEE ALSO
69              
70             L.
71              
72             =head1 AUTHOR
73              
74             Toby Inkster Etobyink@cpan.orgE.
75              
76             =head1 COPYRIGHT AND LICENCE
77              
78             This software is copyright (c) 2025 by Toby Inkster.
79              
80             This is free software; you can redistribute it and/or modify it under
81             the same terms as the Perl 5 programming language system itself.
82              
83             =head1 DISCLAIMER OF WARRANTIES
84              
85             THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
86             WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
87             MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.