X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=benchmarks%2Fimmutable.pl;h=8118511dd89a1047705a90ec2fa9ae6f8baf138b;hb=d03bd989b97597428b460d7f9a021e2931893fa0;hp=0e5fab99c2ca99c7b3fd45ee1435d896e195045a;hpb=f6bee6fe1d579dc3d2ed2952cce9a1556040c8e5;p=gitmo%2FMoose.git diff --git a/benchmarks/immutable.pl b/benchmarks/immutable.pl index 0e5fab9..8118511 100644 --- a/benchmarks/immutable.pl +++ b/benchmarks/immutable.pl @@ -23,18 +23,18 @@ coerce 'Foo' use Moose; has 'default' => (is => 'rw', default => 10); - has 'default_sub' => (is => 'rw', default => sub { [] }); + 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 => 'Foo'); - has 'coercion' => (is => 'rw', isa => 'Foo', coerce => 1); - + has 'required' => (is => 'rw', required => 1); + has 'weak_ref' => (is => 'rw', weak_ref => 1); + has 'type_constraint' => (is => 'rw', isa => 'Foo'); + has 'coercion' => (is => 'rw', isa => 'Foo', coerce => 1); + package Bar::Normal; use Moose; - + extends 'Foo::Normal'; - + has 'default_w_type_constraint' => ( is => 'rw', isa => 'Int', @@ -45,40 +45,40 @@ coerce 'Foo' { package Foo::Immutable; use Moose; - + has 'default' => (is => 'rw', default => 10); - has 'default_sub' => (is => 'rw', default => sub { [] }); + 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 => 'Foo'); + has 'required' => (is => 'rw', required => 1); + has 'weak_ref' => (is => 'rw', weak_ref => 1); + has 'type_constraint' => (is => 'rw', isa => 'Foo'); has 'coercion' => (is => 'rw', isa => 'Foo', coerce => 1); - + #sub BUILD { # # ... #} - + Foo::Immutable->meta->make_immutable(debug => 0); - + package Bar::Immutable; use Moose; - - extends 'Foo::Immutable'; - + + extends 'Foo::Immutable'; + has 'default_w_type_constraint' => ( is => 'rw', isa => 'Int', default => 10, - ); - - Bar::Immutable->meta->make_immutable(debug => 0); + ); + + Bar::Immutable->meta->make_immutable(debug => 0); } #__END__ my $foo = Foo->new; -cmpthese(10_000, +cmpthese(10_000, { 'normal' => sub { Foo::Normal->new( @@ -93,7 +93,7 @@ cmpthese(10_000, required => 'BAR', type_constraint => $foo, coercion => [], - weak_ref => {}, + weak_ref => {}, ); }, }