NAME

Git::SVN::Memoize::YAML - store Memoized data in YAML format

SYNOPSIS

use Memoize;
use Git::SVN::Memoize::YAML;

tie my %cache => 'Git::SVN::Memoize::YAML', $filename;
memoize('slow_function', SCALAR_CACHE => [HASH => \%cache]);
slow_function(arguments);

DESCRIPTION

This module provides a class that can be used to tie a hash to a YAML file. The file is read when the hash is initialized and rewritten when the hash is destroyed.

The intent is to allow Memoize to back its cache with a file in YAML format, just like Memoize::Storable allows Memoize to back its cache with a file in Storable format. Unlike the Storable format, the YAML format is platform-independent and fairly stable.

Carps on error.

DIAGNOSTICS

See YAML::Any.

DEPENDENCIES

YAML::Any from CPAN.

INCOMPATIBILITIES

None reported.

BUGS

The entire cache is read into a Perl hash when loading the file, so this is not very scalable.