NAME

MooseX::NonMoose::Meta::Role::Class - metaclass trait for MooseX::NonMoose

VERSION

version 0.17

SYNOPSIS

package Foo;
use Moose -traits => 'MooseX::NonMoose::Meta::Role::Class';

# or

package My::Moose;
use Moose ();
use Moose::Exporter;

Moose::Exporter->setup_import_methods;
sub init_meta {
    shift;
    my %options = @_;
    Moose->init_meta(%options);
    Moose::Util::MetaRole::apply_metaclass_roles(
        for_class       => $options{for_class},
        metaclass_roles => ['MooseX::NonMoose::Meta::Role::Class'],
    );
    return Class::MOP::class_of($options{for_class});
}

DESCRIPTION

This trait implements everything involved with extending non-Moose classes, other than doing the actual inlining at make_immutable time. See MooseX::NonMoose for more details.

AUTHOR

Jesse Luehrs <doy at tozt dot net>

COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by Jesse Luehrs.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.