bump version to 0.65
[gitmo/Moose.git] / lib / Moose.pm
index 504096a..eb00d7f 100644 (file)
@@ -6,7 +6,7 @@ use warnings;
 
 use 5.008;
 
-our $VERSION   = '0.64';
+our $VERSION   = '0.65';
 $VERSION = eval $VERSION;
 our $AUTHORITY = 'cpan:STEVAN';
 
@@ -15,7 +15,7 @@ use Carp         'confess', 'croak', 'cluck';
 
 use Moose::Exporter;
 
-use Class::MOP 0.75;
+use Class::MOP 0.76;
 
 use Moose::Meta::Class;
 use Moose::Meta::TypeConstraint;
@@ -36,6 +36,13 @@ use Moose::Meta::Role::Application::ToInstance;
 use Moose::Util::TypeConstraints;
 use Moose::Util ();
 
+sub _caller_info {
+    my $level = @_ ? ($_[0] + 1) : 2;
+    my %info;
+    @info{qw(package file line)} = caller($level);
+    return \%info;
+}
+
 sub throw_error {
     # FIXME This 
     shift;
@@ -74,7 +81,7 @@ sub has {
     my $class = shift;
     my $name  = shift;
     croak 'Usage: has \'name\' => ( key => value, ... )' if @_ == 1;
-    my %options = @_;
+    my %options = ( definition_context => _caller_info(), @_ );
     my $attrs = ( ref($name) eq 'ARRAY' ) ? $name : [ ($name) ];
     Class::MOP::Class->initialize($class)->add_attribute( $_, %options ) for @$attrs;
 }
@@ -1012,6 +1019,8 @@ Part 2 - L<http://www.stonehenge.com/merlyn/LinuxMag/col95.html>
 
 =item L<Class::MOP> documentation
 
+=item L<Moose::Util::TypeConstraints> for information about type constraints.
+
 =item The #moose channel on irc.perl.org
 
 =item The Moose mailing list - moose@perl.org