use Person; my $p = Person->new(age => 10); print "Person has age ", $p->age(); #### package Person; use Moose; use Types; has 'age' => (is => 'rw', isa => 'AdmissibleAge'); 1; #### package Types; use Moose::Util::TypeConstraints; subtype 'AdmissibleAge' => as 'Num' => where {$_ >= 0 and $_ <= 99}; 1;