X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FLaTeX-TikZ.git;a=blobdiff_plain;f=lib%2FLaTeX%2FTikZ%2FMeta%2FTypeConstraint%2FAutocoerce.pm;h=c31508b41f6d80dc82aab3e88ecaa80f1eabc33a;hp=0804c7f9efef0c20a870e82f7deab1d7ecc42cfb;hb=cb4173493eb06b031615951a9deeee12a54361b1;hpb=04d3984b7e9310f2d825c6458620a8c131bf3030 diff --git a/lib/LaTeX/TikZ/Meta/TypeConstraint/Autocoerce.pm b/lib/LaTeX/TikZ/Meta/TypeConstraint/Autocoerce.pm index 0804c7f..c31508b 100644 --- a/lib/LaTeX/TikZ/Meta/TypeConstraint/Autocoerce.pm +++ b/lib/LaTeX/TikZ/Meta/TypeConstraint/Autocoerce.pm @@ -89,8 +89,9 @@ use Scalar::Util qw/blessed/; use Sub::Name (); +use LaTeX::TikZ::Tools; + use Any::Moose; -use Any::Moose 'Util' => [ 'find_meta' ]; =head1 RELATIONSHIPS @@ -163,10 +164,10 @@ around 'new' => sub { } my $parent = delete $args{parent}; - unless (defined $parent and blessed $parent) { - $parent = find_meta($parent); - Carp::confess("No meta object for parent $parent"); - $parent = $parent->type_constraint; + unless (blessed $parent) { + my $parent_name = defined $parent ? "parent $parent" : 'undefined parent'; + $parent = LaTeX::TikZ::Tools::type_constraint($parent) if defined $parent; + Carp::confess("No meta object for $parent_name") unless defined $parent; } __PACKAGE__->meta->find_attribute_by_name('parent') ->type_constraint->assert_valid($parent);