File Coverage

blib/lib/Hash/ExtendedKeys.pm
Criterion Covered Total %
statement 22 22 100.0
branch n/a
condition n/a
subroutine 7 7 100.0
pod 0 1 0.0
total 29 30 96.6


line stmt bran cond sub pod time code
1             package Hash::ExtendedKeys;
2              
3 2     2   150277 use 5.006;
  2         16  
4 2     2   12 use strict;
  2         4  
  2         63  
5 2     2   11 use warnings;
  2         4  
  2         73  
6 2     2   877 use Hash::ExtendedKeys::Tie;
  2         7  
  2         136  
7              
8             our $VERSION = '0.02';
9              
10 2     2   2985 use overload '%{}' => sub { ${$_[0]}->{hash}; }, fallback => 1;
  2     12   2158  
  2         28  
  12         560  
  12         88  
11              
12             sub new {
13 1     1 0 104 my ($class) = @_;
14              
15 1         6 my $self = \{
16             hash => {},
17             };
18              
19 1         2 tie %{${$self}->{hash}}, 'Hash::ExtendedKeys::Tie';
  1         2  
  1         16  
20              
21 1         3 bless $self, $class;
22             }
23              
24             =head1 NAME
25              
26             Hash::ExtendedKeys - Hash Keys
27              
28             =head1 VERSION
29              
30             Version 0.02
31              
32             =cut
33              
34             =head1 SYNOPSIS
35              
36             Quick summary of what the module does.
37              
38             Perhaps a little code snippet.
39              
40             use Hash::ExtendedKeys;
41              
42             my $hash = Hash::ExtendedKeys->new();
43              
44             my $ref = { a => 1, b => 2, c => 3 };
45            
46             $hash->{$ref} = 1;
47             $hash->{{ a => 1, b => 2, c => 3}}++;
48              
49             ...
50              
51             use Hash::ExtendedKeys::Tie;
52              
53             tie my %hash, 'Hash::ExtendedKeys::Tie';
54              
55             my $ref = [qw/a b c/];
56              
57             $hash{$ref} = 1;
58             $hash{[qw/a b c/]}++;
59              
60              
61             =head1 AUTHOR
62              
63             LNATION, C<< >>
64              
65             =head1 BUGS
66              
67             Please report any bugs or feature requests to C, or through
68             the web interface at L. I will be notified, and then you'll
69             automatically be notified of progress on your bug as I make changes.
70              
71             =head1 SUPPORT
72              
73             You can find documentation for this module with the perldoc command.
74              
75             perldoc Hash::ExtendedKeys
76              
77              
78             You can also look for information at:
79              
80             =over 4
81              
82             =item * RT: CPAN's request tracker (report bugs here)
83              
84             L
85              
86             =item * CPAN Ratings
87              
88             L
89              
90             =item * Search CPAN
91              
92             L
93              
94             =back
95              
96              
97             =head1 ACKNOWLEDGEMENTS
98              
99              
100             =head1 LICENSE AND COPYRIGHT
101              
102             This software is Copyright (c) 2021 by LNATION.
103              
104             This is free software, licensed under:
105              
106             The Artistic License 2.0 (GPL Compatible)
107              
108              
109             =cut
110              
111             1; # End of Hash::ExtendedKeys