make this work in roles
[gitmo/MooseX-UndefTolerant.git] / lib / MooseX / UndefTolerant / ApplicationToClass.pm
diff --git a/lib/MooseX/UndefTolerant/ApplicationToClass.pm b/lib/MooseX/UndefTolerant/ApplicationToClass.pm
new file mode 100644 (file)
index 0000000..353858b
--- /dev/null
@@ -0,0 +1,21 @@
+package MooseX::UndefTolerant::ApplicationToClass;
+use Moose::Role;
+
+around apply => sub {
+    my $orig  = shift;
+    my $self  = shift;
+    my ($role, $class) = @_;
+
+    Moose::Util::MetaRole::apply_metaroles(
+        for             => $class,
+        class_metaroles => {
+            class => [ 'MooseX::UndefTolerant::Class' ],
+        }
+    );
+
+    $self->$orig( $role, $class );
+};
+
+no Moose::Role;
+
+1;