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.