NAME

Class::Method::Cache::FastMmap - Cache method results using Cache::FastMmap

VERSION

version v0.3.2

SYNOPSIS

package MyClass;

use Class::Method::Cache::FastMmap;

sub my_method {
  ...
}

cache 'my_method' => (
   serializer  => 'storable',
   expire_time => '1h',
);

DESCRIPTION

This package allows you to easily cache the results of a method call using Cache::FastMmap.

EXPORTS

cache

cache $method => %options;

This wraps the $method with a function that caches the return value.

It assumes that the method returns a defined scalar value and that the method arguments are serialisable.

The %options are as follows:

Remaining %options are passed to the constructor for Cache::FastMmap.

As of v0.3.0, you can import the cache method with a different namme:

use Class::Method::Cache::FastMmap
   "cache" => { -as => "memoize" };

sub my_method {
  ...
}

memoize 'my_method' => (
   serializer  => 'storable',
   expire_time => '1h',
);

Undefined results are not cached. So if your method returns undef on failure, then it never cache that result.

SEE ALSO

Cache::FastMmap

Object::Signature

SOURCE

The development version is on github at https://github.com/robrwo/Class-Method-Cache-FastMmap and may be cloned from git://github.com/robrwo/Class-Method-Cache-FastMmap.git

BUGS

Please report any bugs or feature requests on the bugtracker website https://github.com/robrwo/Class-Method-Cache-FastMmap/issues

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

AUTHOR

Robert Rothenberg rrwo@cpan.org

Some development of this module was sponsored by Science Photo Library https://www.sciencephoto.com.

COPYRIGHT AND LICENSE

This software is Copyright (c) 2018 by Robert Rothenberg.

This is free software, licensed under:

The Artistic License 2.0 (GPL Compatible)