Hello Moose, I guess I have an enhancement idea/request.
I have a parametrized ArrayRef[] of a custom type, I'd like my coercion on that type to work for any of the values in the collection. HashRef[]s should work too. Maybe Maybe[]s, but not in my example below.
Would this be worthwhile or viable? If so, I'd be willing to attempt a patch...
Thanks, Charles Alderman Here's a test: ---- #!/usr/bin/perl use strict; use warnings; use Test::More tests => 2; use Test::Exception; { package Foo; use Moose; use Moose::Util::TypeConstraints; enum 'Foo::Values' => qw{ Foo Bar Baz None }; coerce 'Foo::Values' => from 'Undef' => via { 'None' }; has 'array_of_foo' => ( is => 'rw', isa => 'ArrayRef[Foo::Values]', coerce => 1, ); } { my $foo = Foo->new(); my @ok_values = ( 'Foo', 'Bar', 'Baz', 'None' ); my @coerced_values = ( 'Foo', 'Bar', undef, 'None' ); lives_ok { $foo->array_of_foo( [EMAIL PROTECTED] ); } '... setting array with ok values'; lives_ok { $foo->array_of_foo( [EMAIL PROTECTED] ); } '... setting array with coerced values'; }