X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMooseX-Singleton.git;a=blobdiff_plain;f=lib%2FMooseX%2FSingleton%2FRole%2FObject.pm;h=f745b2b81841df71360404bbfcfa9bc2618a392d;hp=b09613fac7e0eef9626647635baf98fcafa58ee8;hb=0a71b1e610530e80cb99ffdec7fca186090474d0;hpb=8eec3c69ee4aa161601b0255c3b32cd6d9cc6998 diff --git a/lib/MooseX/Singleton/Role/Object.pm b/lib/MooseX/Singleton/Role/Object.pm index b09613f..f745b2b 100644 --- a/lib/MooseX/Singleton/Role/Object.pm +++ b/lib/MooseX/Singleton/Role/Object.pm @@ -1,37 +1,40 @@ -#!/usr/bin/env perl package MooseX::Singleton::Role::Object; use Moose::Role; +use Carp qw( carp ); + +our $VERSION = '0.25'; +$VERSION = eval $VERSION; sub instance { shift->new } sub initialize { - my ($class, @args) = @_; + my ( $class, @args ) = @_; - my $existing = $class->meta->existing_singleton; - confess "Singleton is already initialized" if $existing; + my $existing = $class->meta->existing_singleton; + confess "Singleton is already initialized" if $existing; - return $class->SUPER::new(@args); + return $class->new(@args); } override new => sub { - my ($class, @args) = @_; + my ( $class, @args ) = @_; - my $existing = $class->meta->existing_singleton; - confess "Singleton is already initialized" if $existing and @args; + my $existing = $class->meta->existing_singleton; + confess "Singleton is already initialized" if $existing and @args; - # Otherwise BUILD will be called repeatedly on the existing instance. - # -- rjbs, 2008-02-03 - return $existing if $existing and ! @args; + # Otherwise BUILD will be called repeatedly on the existing instance. + # -- rjbs, 2008-02-03 + return $existing if $existing and !@args; - return super(); + return super(); }; sub _clear_instance { - my ($class) = @_; - $class->meta->clear_singleton; + my ($class) = @_; + $class->meta->clear_singleton; } -no Moose; +no Moose::Role; 1; @@ -41,7 +44,7 @@ __END__ =head1 NAME -MooseX::Singleton::Object - Object class role for MooseX::Singleton +MooseX::Singleton::Role::Object - Object class role for MooseX::Singleton =head1 DESCRIPTION