X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMouse.git;a=blobdiff_plain;f=lib%2FMouse%2FMeta%2FRole.pm;h=b9f6b38707f1e48ebf09d25266edf40fb0fa6e95;hp=db9a867f66d81f2f4c53904fb188da47e66798b5;hb=fce211ae5c3943a1b041b9c0985c4daf189fb8a8;hpb=eb05b8be3e00193d58bb9a448397dd7f1375faa7 diff --git a/lib/Mouse/Meta/Role.pm b/lib/Mouse/Meta/Role.pm index db9a867..b9f6b38 100644 --- a/lib/Mouse/Meta/Role.pm +++ b/lib/Mouse/Meta/Role.pm @@ -1,8 +1,8 @@ package Mouse::Meta::Role; use strict; use warnings; -use Carp 'confess'; +use Mouse::Util qw(not_supported); use base qw(Mouse::Meta::Module); sub _new { @@ -51,7 +51,7 @@ sub _check_required_methods{ } } - confess "'$role_name' requires the method '$method_name' to be implemented by '$class_name'" + $role->throw_error("'$role_name' requires the method '$method_name' to be implemented by '$class_name'") unless $has_method; } } @@ -159,7 +159,7 @@ sub apply { my($self, $class, %args) = @_; if ($class->isa('Mouse::Object')) { - Carp::croak('Mouse does not support Application::ToInstance yet'); + not_supported 'Application::ToInstance'; } $self->_check_required_methods($class, \%args); @@ -217,7 +217,7 @@ sub does_role { my ($self, $role_name) = @_; (defined $role_name) - || confess "You must supply a role name to look for"; + || $self->throw_error("You must supply a role name to look for"); # if we are it,.. then return true return 1 if $role_name eq $self->name;