| MooseX-Storage documentation | Contained in the MooseX-Storage distribution. |
MooseX::Storage::Meta::Attribute::DoNotSerialize - A custom meta-attribute to bypass serialization
package Point;
use Moose;
use MooseX::Storage;
with Storage('format' => 'JSON', 'io' => 'File');
has 'x' => (is => 'rw', isa => 'Int');
has 'y' => (is => 'rw', isa => 'Int');
has 'foo' => (
metaclass => 'DoNotSerialize',
is => 'rw',
isa => 'CodeRef',
);
1;
Sometimes you don't want a particular attribute to be part of the serialization, in this case, you want to make sure that attribute uses this custom meta-attribute. See the SYNOPSIS for a nice example that can be easily cargo-culted.
All complex software has bugs lurking in it, and this module is no exception. If you find a bug please either email me, or add the bug to cpan-RT.
Chris Prather <chris.prather@iinteractive.com>
Stevan Little <stevan.little@iinteractive.com>
Copyright 2007-2008 by Infinity Interactive, Inc.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| MooseX-Storage documentation | Contained in the MooseX-Storage distribution. |
package MooseX::Storage::Meta::Attribute::DoNotSerialize; use Moose; our $VERSION = '0.30'; our $AUTHORITY = 'cpan:STEVAN'; extends 'Moose::Meta::Attribute'; with 'MooseX::Storage::Meta::Attribute::Trait::DoNotSerialize'; # register this alias ... package Moose::Meta::Attribute::Custom::DoNotSerialize; our $VERSION = '0.30'; our $AUTHORITY = 'cpan:STEVAN'; sub register_implementation { 'MooseX::Storage::Meta::Attribute::DoNotSerialize' } 1; __END__