logo
Free, Micro AI Code Reviews That Run on Git Commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, Micro AI Code Reviews That Run on Git Commit | Product Hunt git-lrc - Free, Micro AI Code Reviews That Run on Git Commit | Product Hunt

MooseX::Storage::IO::StorableFile - An Storable File I/O role

Authors

       •   Chris Prather <chris.prather@iinteractive.com>

       •   Stevan Little <stevan.little@iinteractive.com>

       •   יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>

Description

       This module will "load" and "store" Moose classes using Storable. It uses "Storable::nstore" by default
       so that it can be easily used across machines or just locally.

       One important thing to note is that this module does not mix well with the other Format modules. Since
       Storable serialized perl data structures in it's own format, those roles are largely unnecessary.

       However, there is always the possibility that having a set of "freeze/thaw" hooks can be useful, so
       because of that this module will attempt to use "freeze" or "thaw" if that method is available.  Of
       course, you should be careful when doing this as it could lead to all sorts of hairy issues. But you have
       been warned.

Methods

load($filename)store($filename)

Name

       MooseX::Storage::IO::StorableFile - An Storable File I/O role

Support

       Bugs         may        be        submitted        through        the        RT        bug        tracker
       <https://rt.cpan.org/Public/Dist/Display.html?Name=MooseX-Storage>   (or   bug-MooseX-Storage@rt.cpan.org
       <mailto:bug-MooseX-Storage@rt.cpan.org>).

       There    is    also    a    mailing    list    available    for    users   of   this   distribution,   at
       <http://lists.perl.org/list/moose.html>.

       There is also an irc channel available for users of this  distribution,  at  "#moose"  on  "irc.perl.org"
       <irc://irc.perl.org/#moose>.

Synopsis

         package Point;
         use Moose;
         use MooseX::Storage;

         with Storage('io' => 'StorableFile');

         has 'x' => (is => 'rw', isa => 'Int');
         has 'y' => (is => 'rw', isa => 'Int');

         1;

         my $p = Point->new(x => 10, y => 10);

         ## methods to load/store a class
         ## on the file system

         $p->store('my_point');

         my $p2 = Point->load('my_point');

Version

       version 0.53

See Also