X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=lib%2FCatalyst%2FException.pm;h=75064830f360abb46d90d78e3c109b9f7a50f24b;hp=41b411ae9ecd9c2f013c964e1a2e882d24a69945;hb=b007fcc611c8584b634e27a60ebfe5b6f518601a;hpb=2f3812528068bc1d9f7840067f0c03d36cd47e6d diff --git a/lib/Catalyst/Exception.pm b/lib/Catalyst/Exception.pm index 41b411a..7506483 100644 --- a/lib/Catalyst/Exception.pm +++ b/lib/Catalyst/Exception.pm @@ -2,11 +2,6 @@ package Catalyst::Exception; # XXX: See bottom of file for Exception implementation -package Catalyst::Exception::Base; - -use Moose; -use Carp (); - =head1 NAME Catalyst::Exception - Catalyst Exception Class @@ -31,19 +26,6 @@ This is the Catalyst Exception class. Throws a fatal exception. -=cut - -sub throw { - my $class = shift; - my %params = @_ == 1 ? ( error => $_[0] ) : @_; - - my $message = $params{message} || $params{error} || $! || ''; - - local $Carp::CarpLevel = 1; - - Carp::croak($message); -} - =head2 meta Provided by Moose @@ -54,23 +36,35 @@ Catalyst Contributors, see Catalyst.pm =head1 COPYRIGHT -This program is free software, you can redistribute it and/or modify +This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself. =cut -Catalyst::Exception::Base->meta->make_immutable; +{ + package Catalyst::Exception::Base; -package Catalyst::Exception; + use Moose; + use namespace::clean -except => 'meta'; -use Moose; -use vars qw[$CATALYST_EXCEPTION_CLASS]; + with 'Catalyst::Exception::Basic'; -BEGIN { - extends($CATALYST_EXCEPTION_CLASS || 'Catalyst::Exception::Base'); + __PACKAGE__->meta->make_immutable; } -no Moose; -__PACKAGE__->meta->make_immutable; +{ + package Catalyst::Exception; + + use Moose; + use namespace::clean -except => 'meta'; + + use vars qw[$CATALYST_EXCEPTION_CLASS]; + + BEGIN { + extends($CATALYST_EXCEPTION_CLASS || 'Catalyst::Exception::Base'); + } + + __PACKAGE__->meta->make_immutable; +} 1;