Version 0.28
[gitmo/MooseX-Storage.git] / lib / MooseX / Storage / Engine.pm
index cee4178..1b6a70b 100644 (file)
@@ -3,7 +3,7 @@ package MooseX::Storage::Engine;
 use Moose;
 use Scalar::Util qw(refaddr);
 
-our $VERSION   = '0.25';
+our $VERSION   = '0.28';
 our $AUTHORITY = 'cpan:STEVAN';
 
 # the class marker when
@@ -22,7 +22,7 @@ has 'seen' => (
     default => sub {{}}
 );
 
-has 'object' => (is => 'rw', isa => 'Object');
+has 'object' => (is => 'rw', isa => 'Object', predicate => '_has_object');
 has 'class'  => (is => 'rw', isa => 'Str');
 
 ## this is the API used by other modules ...
@@ -143,7 +143,7 @@ sub map_attributes {
     } grep {
         # Skip our special skip attribute :)
         !$_->does('MooseX::Storage::Meta::Attribute::Trait::DoNotSerialize')
-    } ($self->object || $self->class)->meta->get_all_attributes;
+    } ($self->_has_object ? $self->object : $self->class)->meta->get_all_attributes;
 }
 
 ## ------------------------------------------------------------------