diff options
author | Jesse Luehrs <doy@tozt.net> | 2011-05-25 19:36:49 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2011-05-25 19:36:49 -0500 |
commit | 53617281749f123de4da146e810fd892c1a28dd3 (patch) | |
tree | 3f8f77978d37698a7cc77ae9ac53ebc5e993cb55 /lib/Bread/Board/Declare/Meta | |
parent | 219d8e56458e61eab39c78395cddb9689256f512 (diff) | |
download | bread-board-declare-53617281749f123de4da146e810fd892c1a28dd3.tar.gz bread-board-declare-53617281749f123de4da146e810fd892c1a28dd3.zip |
ensure classes corresponding to class types are loaded
otherwise, type inference doesn't work
Diffstat (limited to 'lib/Bread/Board/Declare/Meta')
-rw-r--r-- | lib/Bread/Board/Declare/Meta/Role/Attribute.pm | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Bread/Board/Declare/Meta/Role/Attribute.pm b/lib/Bread/Board/Declare/Meta/Role/Attribute.pm index 1eabba1..000abef 100644 --- a/lib/Bread/Board/Declare/Meta/Role/Attribute.pm +++ b/lib/Bread/Board/Declare/Meta/Role/Attribute.pm @@ -147,6 +147,7 @@ after attach_to_class => sub { if ($self->has_block) { if ($tc && $tc->isa('Moose::Meta::TypeConstraint::Class')) { %params = (%params, class => $tc->class); + Class::MOP::load_class($tc->class); } $service = Bread::Board::Declare::BlockInjection->new( %params, @@ -160,6 +161,7 @@ after attach_to_class => sub { ); } elsif ($tc && $tc->isa('Moose::Meta::TypeConstraint::Class')) { + Class::MOP::load_class($tc->class); $service = Bread::Board::Declare::ConstructorInjection->new( %params, class => $tc->class, |