+++ /dev/null
-use strict;
-use warnings;
-
-package MooseX::InsideOut::Meta::Class;
-
-# need to load this before loading Moose and using it as a metaclass, because
-# of circularity
-use MooseX::InsideOut::Meta::Instance;
-use Moose;
-extends 'Moose::Meta::Class';
-
-sub initialize {
- my $class = shift;
- my $pkg = shift;
- $class->SUPER::initialize(
- $pkg,
- instance_metaclass => 'MooseX::InsideOut::Meta::Instance',
- @_,
- );
-}
-
-# this seems like it should be part of Moose::Meta::Class
-sub construct_instance {
- my ($class, %params) = @_;
- my $meta_instance = $class->get_meta_instance;
- my $instance = $params{'__INSTANCE__'}
- || $meta_instance->create_instance();
- foreach my $attr ($class->compute_all_applicable_attributes()) {
- my $meta_instance = $attr->associated_class->get_meta_instance;
- $attr->initialize_instance_slot($meta_instance, $instance, \%params);
- }
- return $instance;
-}
-
-1;