| Badger documentation | Contained in the Badger distribution. |
Badger::Codec::YAML - encode/decode data using YAML
use Badger::Codec::YAML;
my $codec = Badger::Codec::YAML->new();
my $encoded = $codec->encode("Hello World");
my $decoded = $codec->decode($encoded);
This module implements a subclass of Badger::Codec which uses the YAML module to encode and decode data to and from YAML.
Encodes $data to YAML.
$encoded = Badger::Codec::YAML->encode($data);
Decodes $data from YAML.
$decoded = Badger::Codec::YAML->decode($encoded);
This method returns a reference to the real subroutine that's doing
all the encoding work, i.e. the Dump() subroutine in YAML.
This method returns a reference to the real subroutine that's doing
all the decoding work, i.e. the Load() subroutine in YAML.
Andy Wardley http://wardley.org/
Copyright (C) 2005-2009 Andy Wardley. All rights reserved.
| Badger documentation | Contained in the Badger distribution. |
#======================================================================== # # Badger::Codec::YAML # # DESCRIPTION # Codec module for encoding/decoding YAML # # AUTHOR # Andy Wardley <abw@wardley.org> # #======================================================================== package Badger::Codec::YAML; use Badger::Class version => 0.01, base => 'Badger::Codec', import => 'class CLASS'; BEGIN { eval { require 'YAML.pm' } || CLASS->error("You don't have YAML installed"); } sub encode { my $self = shift; YAML::Dump(shift); } sub decode { my $self = shift; YAML::Load(shift); } # shortcuts straight to the real encoder/decoder subs for efficient aliasing sub encoder { \&YAML::Dump; } sub decoder { \&YAML::Load; } 1; __END__
# Local Variables: # mode: Perl # perl-indent-level: 4 # indent-tabs-mode: nil # End: # # vim: expandtab shiftwidth=4: