summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2009-06-23 10:41:52 -0500
committerJesse Luehrs <doy@tozt.net>2009-06-23 10:41:52 -0500
commit78a23991ad2bf27b9bc38345c251f79ef954101b (patch)
tree86e96e71f5fdb73f6c8e20fc175ab6cb5c99e5e4
parent00d3d42d7e81c8b41ced52f4dcb8573224b8e64c (diff)
downloadmoosex-extension-78a23991ad2bf27b9bc38345c251f79ef954101b.tar.gz
moosex-extension-78a23991ad2bf27b9bc38345c251f79ef954101b.zip
expand out metarolesHEADmaster
-rw-r--r--lib/MooseX/Extension.pm6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/MooseX/Extension.pm b/lib/MooseX/Extension.pm
index f69c181..8981746 100644
--- a/lib/MooseX/Extension.pm
+++ b/lib/MooseX/Extension.pm
@@ -31,6 +31,12 @@ sub init_meta {
shift;
my %options = @_;
Moose->init_meta(%options);
+ my $base_class_roles = delete $args->{-base_class_roles};
+ my %metaclass_roles = map {
+ my $key = $_;
+ $key =~ s/^-//;
+ ($key, $args->{-$key});
+ } keys %$args;
Moose::Util::MetaRole::apply_metaclass_roles(
for_class => $options{for_class},
);