The Perl 5 module MooseX::Types::Structured provides structured
type constraints for Moose. A structured type constraint is a
standard container Moose type constraint, such as an ArrayRef or
HashRef, which has been enhanced to allow you to explicitly name
all the allowed type constraints inside the structure.

Homepage:
http://search.cpan.org/dist/MooseX-Types-Structured/
