##
has 'secret_name' => ( init_arg => undef, ... );
##
##
package My::Object;
use Moose;
has foo => ( is => 'rw' );
sub BUILD {
my ($self, $params) = @_;
$self->foo( $params->{bar} );
}
##
##
package Queue;
use Moose;
has '_items' => (
traits => [ 'Array' ],
is => 'bare',
init_arg => 'items',
isa => 'ArrayRef',
lazy => 1,
default => sub { [] },
handles => {
'enqueue' => 'shift',
'dequeue' => 'pop'
}
);