{ package Row; use Moose; use Moose::Util::TypeConstraints; has 'row' => ( traits => ['Array'], is => 'ro', isa => 'ArrayRef[Cell]', required => 1, default => sub { [] }, handles => { pushCell => 'push', getCell => 'get', allCells => 'elements', }, ); }