subtype Foo, as ArrayRef[Str], where { @$_ < 5 };

Foo is now a parameteriz*able* type, not a parameteriz*ed* type; that is,
in theory (if the MooseX::Types decorators allow it), you can:

  has foo_classes => (isa => Foo[ClassName]);

since ClassName is a subtype of Str.

This surprised me, and means that Native::Trait::Array/Hash totally don't work
with subtypes of parameterized types.

I'm poking at this now.  Any insight is welcome.

hdp.

Reply via email to