use 5.006;
use base 'Exporter';
-our $VERSION = '0.15';
+our $VERSION = '0.18';
BEGIN {
if ($ENV{MOUSE_DEBUG}) {
my $names = shift;
$names = [$names] if !ref($names);
+ my $metaclass = 'Mouse::Meta::Attribute';
+ my %options = @_;
+
+ if ( my $metaclass_name = delete $options{metaclass} ) {
+ my $new_class = Mouse::Util::resolve_metaclass_alias(
+ 'Attribute',
+ $metaclass_name
+ );
+ if ( $metaclass ne $new_class ) {
+ $metaclass = $new_class;
+ }
+ }
for my $name (@$names) {
if ($name =~ s/^\+//) {
- Mouse::Meta::Attribute->clone_parent($meta, $name, @_);
+ $metaclass->clone_parent($meta, $name, @_);
}
else {
- Mouse::Meta::Attribute->create($meta, $name, @_);
+ $metaclass->create($meta, $name, @_);
}
}
}