package Foo;
use Mouse;
use Mouse::Util::TypeConstraints;
- subtype Baz => where { defined($_) && $_ eq 'Baz' };
+ type Baz => where { defined($_) && $_ eq 'Baz' };
coerce Baz => from 'ArrayRef', via { 'Baz' };
has 'bar' => ( is => 'rw', isa => 'Str | Baz | Undef', coerce => 1 );
}
use Mouse;
use Mouse::Util::TypeConstraints;
- subtype 'Type1' => where { defined($_) && $_ eq 'Name' };
+ type 'Type1' => where { defined($_) && $_ eq 'Name' };
coerce 'Type1', from 'Str', via { 'Names' };
- subtype 'Type2' => where { defined($_) && $_ eq 'Group' };
+ type 'Type2' => where { defined($_) && $_ eq 'Group' };
coerce 'Type2', from 'Str', via { 'Name' };
has 'foo' => ( is => 'rw', isa => 'Type1|Type2', coerce => 1 );
use Mouse;
use Mouse::Util::TypeConstraints;
- subtype 'Type3' => where { defined($_) && $_ eq 'Name' };
+ type 'Type3' => where { defined($_) && $_ eq 'Name' };
coerce 'Type3', from 'CodeRef', via { 'Name' };
has 'foo' => ( is => 'rw', isa => 'Type3|KLASS|Undef', coerce => 1 );