Attribute (insert_class) does not pass the type constraint because: Not a valid class at /home/neil/perl5/lib/perl5/x86_64-linux-thread-multi/Mouse/Util.pm line 383, line 1. Mouse::Util::throw_error('Mouse::Meta::Attribute=HASH(0x1618698)', 'Attribute (insert_class) does not pass the type constraint be...', 'data', '192_168_0_151', 'depth', -1) called at /home/neil/perl5/lib/perl5/x86_64-linux-thread-multi/Mouse/Util.pm line 383, line 1. Mouse::Util::throw_error('Mouse::Meta::Attribute=HASH(0x1618698)', 'Attribute (insert_class) does not pass the type constraint be...', 'data', '192_168_0_151', 'depth', -1) called at ./p1.pl line 35 .... subtype 'my_insert_class', => as 'Str', => where { m/^[a-zA-Z0-9]+$/ }, => message { '$_ is not a valid class' }; has 'insert_class' => ( is => 'rw', isa => 'my_insert_class' );