make a dev version to go with the CMOP release
[gitmo/Moose.git] / lib / Moose / Meta / Attribute.pm
index 2e61cdb..d835168 100644 (file)
@@ -7,7 +7,7 @@ use warnings;
 use Scalar::Util 'blessed', 'weaken';
 use overload     ();
 
-our $VERSION   = '0.64';
+our $VERSION   = '0.71_01';
 our $AUTHORITY = 'cpan:STEVAN';
 
 use Moose::Meta::Method::Accessor;
@@ -509,7 +509,7 @@ sub set_value {
     }
 
     if ($self->has_trigger) {
-        $self->trigger->($instance, $value, $self);
+        $self->trigger->($instance, $value);
     }
 }
 
@@ -705,6 +705,8 @@ sub _get_delegate_method_list {
     }
 }
 
+sub delegation_metaclass { 'Moose::Meta::Method::Delegation' }
+
 sub _make_delegation_method {
     my ( $self, $handle_name, $method_to_call ) = @_;
 
@@ -713,7 +715,7 @@ sub _make_delegation_method {
     $method_body = $method_to_call
         if 'CODE' eq ref($method_to_call);
 
-    return Moose::Meta::Method::Delegation->new(
+    return $self->delegation_metaclass->new(
         name               => $handle_name,
         package_name       => $self->associated_class->name,
         attribute          => $self,
@@ -787,16 +789,18 @@ will behave just as L<Class::MOP::Attribute> does.
 
 =item B<accessor_metaclass>
 
+=item B<delegation_metaclass>
+
 =item B<get_value>
 
 =item B<set_value>
 
-  eval { $point->meta->get_attribute('x')->set_value($point, 'fourty-two') };
+  eval { $point->meta->get_attribute('x')->set_value($point, 'forty-two') };
   if($@) {
     print "Oops: $@\n";
   }
 
-I<Attribute (x) does not pass the type constraint (Int) with 'fourty-two'>
+I<Attribute (x) does not pass the type constraint (Int) with 'forty-two'>
 
 Before setting the value, a check is made on the type constraint of
 the attribute, if it has one, to see if the value passes it. If the
@@ -964,7 +968,7 @@ Yuval Kogman E<lt>nothingmuch@woobling.comE<gt>
 
 =head1 COPYRIGHT AND LICENSE
 
-Copyright 2006-2008 by Infinity Interactive, Inc.
+Copyright 2006-2009 by Infinity Interactive, Inc.
 
 L<http://www.iinteractive.com>