X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMooseX%2FSingleton%2FRole%2FObject.pm;fp=lib%2FMooseX%2FSingleton%2FObject.pm;h=b09613fac7e0eef9626647635baf98fcafa58ee8;hb=8eec3c69ee4aa161601b0255c3b32cd6d9cc6998;hp=312e472a415d01bd7eec23fddd1670a9cec9b03e;hpb=b1882d9b6ec47b18a97dadb6e1326305d890c806;p=gitmo%2FMooseX-Singleton.git diff --git a/lib/MooseX/Singleton/Object.pm b/lib/MooseX/Singleton/Role/Object.pm similarity index 80% rename from lib/MooseX/Singleton/Object.pm rename to lib/MooseX/Singleton/Role/Object.pm index 312e472..b09613f 100644 --- a/lib/MooseX/Singleton/Object.pm +++ b/lib/MooseX/Singleton/Role/Object.pm @@ -1,8 +1,6 @@ #!/usr/bin/env perl -package MooseX::Singleton::Object; -use Moose; - -extends 'Moose::Object'; +package MooseX::Singleton::Role::Object; +use Moose::Role; sub instance { shift->new } @@ -15,7 +13,7 @@ sub initialize { return $class->SUPER::new(@args); } -sub new { +override new => sub { my ($class, @args) = @_; my $existing = $class->meta->existing_singleton; @@ -25,8 +23,8 @@ sub new { # -- rjbs, 2008-02-03 return $existing if $existing and ! @args; - return $class->SUPER::new(@args); -} + return super(); +}; sub _clear_instance { my ($class) = @_; @@ -43,7 +41,7 @@ __END__ =head1 NAME -MooseX::Singleton::Object - base class for MooseX::Singleton +MooseX::Singleton::Object - Object class role for MooseX::Singleton =head1 DESCRIPTION