use Class::C3;
use Moose;
-use Class::MOP::Object ();
extends 'Catalyst::Component';
use bytes;
use Scope::Upper ();
# modifiers work correctly in MyApp (as you have to call setup _before_
# applying modifiers).
Scope::Upper::reap(sub {
- my $meta = $class->Moose::Object::meta();
+ my $meta = Class::MOP::get_metaclass_by_name($class);
$meta->make_immutable unless $meta->is_immutable;
}, 1);
}
if ( $ENV{MOD_PERL} ) {
- my $meta = $class->Class::MOP::Object::meta();
+ my $meta = Class::MOP::get_metaclass_by_name($class);
# create the apache method
$meta->add_method('apache' => sub { shift->engine->apache });
my $env_debug = Catalyst::Utils::env_value( $class, 'DEBUG' );
if ( defined($env_debug) or $levels{debug} ) {
- $class->Class::MOP::Object::meta()->add_method('debug' => sub { 1 });
+ Class::MOP::get_metaclass_by_name($class)->add_method('debug' => sub { 1 });
$class->log->debug('Debug messages enabled');
}
}
my $env = Catalyst::Utils::env_value( $class, 'STATS' );
if ( defined($env) ? $env : ($stats || $class->debug ) ) {
- $class->Class::MOP::Object::meta()->add_method('use_stats' => sub { 1 });
+ Class::MOP::get_metaclass_by_name($class)->add_method('use_stats' => sub { 1 });
$class->log->debug('Statistics enabled');
}
}
$proto->_plugins->{$plugin} = 1;
unless ($instant) {
no strict 'refs';
- if ( my $meta = $class->Class::MOP::Object::meta() ) {
+ if ( my $meta = Class::MOP::get_metaclass_by_name($class) ) {
my @superclasses = ($plugin, $meta->superclasses );
$meta->superclasses(@superclasses);
} else {
use Class::C3::Adopt::NEXT;
use MRO::Compat;
use mro 'c3';
+use Scalar::Util qw/blessed/;
with 'MooseX::Emulate::Class::Accessor::Fast';
with 'Catalyst::ClassData';
# work in a subclass. If we don't have the package symbol in the
# current class we know we need to copy up to ours, which calling
# the setter will do for us.
- my $meta = $self->Class::MOP::Object::meta();
+ my $class = blessed($self) || $self;
+ my $meta = Class::MOP::get_metaclass_by_name($class);
unless ($meta->has_package_symbol('$_config')) {
$config = $self->merge_config_hashes( $config, {} );
with 'MooseX::Emulate::Class::Accessor::Fast';
use Data::Dump;
-use Class::MOP::Object ();
+use Class::MOP ();
our %LEVELS = ();
{
my @levels = qw[ debug info warn error fatal ];
- my $meta = __PACKAGE__->Class::MOP::Object::meta();
+ my $meta = Class::MOP::get_metaclass_by_name(__PACKAGE__);
for ( my $i = 0 ; $i < @levels ; $i++ ) {
my $name = $levels[$i];