Throwable::Error - an easy-to-use class for error objects
version 0.200003
package MyApp::Error; use Moose; extends 'Throwable::Error'; has execution_phase => ( is => 'ro', isa => 'MyApp::Phase', default => 'startup', );
...and in your app...
MyApp::Error->throw("all communications offline"); # or... MyApp::Error->throw({ message => "all communications offline", execution_phase => 'shutdown', });
Throwable::Error is a base class for exceptions that will be thrown to signal errors and abort normal program flow. Throwable::Error is an alternative to Exception::Class, the features of which are largely provided by the Moose object system atop which Throwable::Error is built.
Throwable::Error performs the Throwable and StackTrace::Auto roles. That means you can call throw on it to create and throw an error object in one call, and that every error object will have a stack trace for its creation.
throw
This attribute must be defined and must contain a string describing the error condition. This string will be printed at the top of the stack trace when the error is stringified.
This attribute, provided by StackTrace::Auto, will contain a stack trace object guaranteed to respond to the as_string method. For more information about the stack trace and associated behavior, consult the StackTrace::Auto docs.
as_string
This method will provide a string representing the error, containing the error's message followed by the its stack trace.
Ricardo SIGNES <rjbs@cpan.org>
Florian Ragwitz <rafl@debian.org>
This software is copyright (c) 2012 by Ricardo SIGNES.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Throwable, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Throwable
CPAN shell
perl -MCPAN -e shell install Throwable
For more information on module installation, please visit the detailed CPAN module installation guide.