File: simple_constructor.pl

package info (click to toggle)
libmoose-perl 2.2014-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 7,372 kB
  • sloc: perl: 21,330; ansic: 291; makefile: 10
file content (26 lines) | stat: -rw-r--r-- 650 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/usr/bin/perl

use strict;
use warnings;

my $num_iterations = shift || 100;

{
    package Foo;
    use Moose;

    has 'default'         => (is => 'rw', default => 10);
    has 'default_sub'     => (is => 'rw', default => sub { [] });
    has 'lazy'            => (is => 'rw', default => 10, lazy => 1);
    has 'required'        => (is => 'rw', required => 1);
    has 'weak_ref'        => (is => 'rw', weak_ref => 1);
    has 'type_constraint' => (is => 'rw', isa => 'ArrayRef');
}

foreach (0 .. $num_iterations) {
    my $foo = Foo->new(
        required        => 'BAR',
        type_constraint => [],
        weak_ref        => {},
    );
}