Acme-Akashic-Records

 view release on metacpan or  search on metacpan

lib/Acme/Akashic/Records.pm  view on Meta::CPAN

package Acme::Akashic::Records;
use warnings;
use strict;
our $VERSION = sprintf "%d.%02d", q$Revision: 0.1 $ =~ /(\d+)/g;

my $records;
$records = \$records;
bless $records, __PACKAGE__;

sub AUTOLOAD { $records }

for my $type (qw/ARRAY HASH HANDLE/) {
    no strict 'refs';
    *{ __PACKAGE__ . '::' . $type . '::AUTOLOAD' } = \&AUTOLOAD;
}

use overload
  '@{}' => sub { tie my @records, __PACKAGE__ . '::ARRAY';  \@records },
  '%{}' => sub { tie my %records, __PACKAGE__ . '::HASH';   \%records },
  '*{}' => sub { tie *records,    __PACKAGE__ . '::HANDLE'; \*records },
  '&{}' => sub { sub { $records } },
  fallback => 1;

$records; # End of Acme::Akashic::Records -- or do they ever end?
__END__
=head1 NAME

Acme::Akashic::Records - Access The Akashic Records

=head1 VERSION



( run in 0.397 second using v1.01-cache-2.11-cpan-4d50c553e7e )