version bump ::Meta
[gitmo/Class-MOP.git] / lib / metaclass.pm
index 192a664..2dee906 100644 (file)
@@ -20,7 +20,7 @@ sub import {
     unshift @args, "metaclass" if @args % 2 == 1;
     my %options = @args;
 
-    my $should_install_meta = !delete $options{no_meta};
+    my $meta_name = exists $options{meta_name} ? $options{meta_name} : 'meta';
     my $metaclass = delete $options{metaclass};
 
     unless ( defined $metaclass ) {
@@ -43,7 +43,8 @@ sub import {
 
     # create a meta object so we can install &meta
     my $meta = $metaclass->initialize($package => %options);
-    $meta->_add_meta_method if $should_install_meta;
+    $meta->_add_meta_method($meta_name)
+        if defined $meta_name;
 }
 
 1;
@@ -83,14 +84,16 @@ metaclass - a pragma for installing and using Class::MOP metaclasses
   );
 
   # if we'd rather not install a 'meta' method, we can do this
-  use metaclass no_meta => 1;
+  use metaclass meta_name => undef;
+  # or if we'd like it to have a different name,
+  use metaclass meta_name => 'my_meta';
 
 =head1 DESCRIPTION
 
 This is a pragma to make it easier to use a specific metaclass
 and a set of custom attribute and method metaclasses. It also
-installs a C<meta> method to your class as well, if the
-C<no_meta> option is not specified.
+installs a C<meta> method to your class as well, unless C<undef>
+is passed to the C<meta_name> option.
 
 =head1 AUTHORS