| Badger documentation | Contained in the Badger distribution. |
Badger::Codec::Storable - encode/decode data using Storable
use Badger::Codec::Storable;
my $codec = Badger::Codec::Storable->new();
my $enc = $codec->encode({ pi => 3.14, e => 2.718 });
my $dec = $codec->decode($encoded);
This module implements a subclass of Badger::Codec which uses the
freeze() and thaw() subroutines provided by the Storable module
to encode and decode data.
It a very thin wrapper around the Storable module and offers no functional advantage over it. It exist only to provide a consistent API with other Badger::Codec modules.
Encodes the data referenced by the first argument using freeze().
$encoded = Badger::Codec::Storable->encode($data);
Decodes the encoded data passed as the first argument using thaw().
$decoded = Badger::Codec::Storable->decode($encoded);
This method returns a reference to the real subroutine that's doing
all the encoding work, i.e. the freeze() method in Storable.
This method returns a reference to the real subroutine that's doing
all the decoding work, i.e. the thaw() method in Storable.
Andy Wardley http://wardley.org/
Copyright (C) 2005-2009 Andy Wardley. All rights reserved.
| Badger documentation | Contained in the Badger distribution. |
#======================================================================== # # Badger::Codec::Storable # # DESCRIPTION # Codec for encoding/decoding data via the Storable module. # # AUTHOR # Andy Wardley <abw@wardley.org> # #======================================================================== package Badger::Codec::Storable; use Badger::Class version => 0.01, base => 'Badger::Codec'; use Storable qw( freeze thaw ); sub encode { my $self = shift; freeze(@_); } sub decode { my $self = shift; thaw(@_); } # shortcuts straight to the real encoder/decoder subs for efficient aliasing sub encoder { \&freeze; } sub decoder { \&thaw; } 1; __END__
# Local Variables: # mode: Perl # perl-indent-level: 4 # indent-tabs-mode: nil # End: # # vim: expandtab shiftwidth=4: