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=02610a472abfc9b90556f3b634a68e64dcfd2069;hb=b007fcc611c8584b634e27a60ebfe5b6f518601a;hpb=9f6c5fdc8776506a0183270cfe64f4442e4ced13 diff --git a/lib/Catalyst/Exception.pm b/lib/Catalyst/Exception.pm index 02610a4..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,42 +26,45 @@ 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 -=head1 AUTHOR +=head1 AUTHORS -Sebastian Riedel, C -Christian Hansen, C +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 -package Catalyst::Exception; +{ + package Catalyst::Exception::Base; + + use Moose; + use namespace::clean -except => 'meta'; + + with 'Catalyst::Exception::Basic'; + + __PACKAGE__->meta->make_immutable; +} + +{ + package Catalyst::Exception; + + use Moose; + use namespace::clean -except => 'meta'; + + use vars qw[$CATALYST_EXCEPTION_CLASS]; -use Moose; -use vars qw[$CATALYST_EXCEPTION_CLASS]; + BEGIN { + extends($CATALYST_EXCEPTION_CLASS || 'Catalyst::Exception::Base'); + } -BEGIN { - extends($CATALYST_EXCEPTION_CLASS || 'Catalyst::Exception::Base'); + __PACKAGE__->meta->make_immutable; } 1;