Provided by: libthrowable-perl_0.200009-1_all bug

NAME

       Throwable::Error - an easy-to-use class for error objects

VERSION

       version 0.200009

SYNOPSIS

         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',
         });

DESCRIPTION

       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.

ATTRIBUTES

   message
       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.

   stack_trace
       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.

METHODS

   as_string
       This method will provide a string representing the error, containing the error's message
       followed by the its stack trace.

AUTHORS

       •   Ricardo SIGNES <rjbs@cpan.org>

       •   Florian Ragwitz <rafl@debian.org>

COPYRIGHT AND LICENSE

       This software is copyright (c) 2013 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.