Unexpected::TraitFor::Throwing - Detects and throws exceptions
use Moo; with 'Unexpected::TraitFor::Throwing';
Detects and throws exceptions
Modifies BUILD in the consuming class. Caches the new exception for use by the previous_exception attribute in the next exception thrown
BUILD
previous_exception
Requires the consuming class to have the class method is_one_of_us
is_one_of_us
Defines the following list of attributes;
May hold a reference to the previous exception in this thread
$self = $class->caught( [ @args ] );
Catches and returns a thrown exception or generates a new exception if $EVAL_ERROR has been set. Returns either an exception object or undef
$EVAL_ERROR
$class->throw error => 'Path [_1] not found', args => [ 'pathname' ];
Create (or re-throw) an exception. If the passed parameter is a blessed reference it is re-thrown. If a single scalar is passed it is taken to be an error message, a new exception is created with all other parameters taking their default values. If more than one parameter is passed the it is treated as a list and used to instantiate the new exception. The 'error' parameter must be provided in this case
$class->throw_on_error( [ @args ] );
Calls "caught" passing in the options @args and if there was an exception "throw"s it
@args
None
There are no known incompatibilities in this module
There are no known bugs in this module. Please report problems to the address below. Patches are welcome
Larry Wall - For the Perl programming language
Peter Flanigan, <pjfl@cpan.org>
<pjfl@cpan.org>
Copyright (c) 2014 Peter Flanigan. All rights reserved
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic
This program is distributed in the hope that it will be useful, but WITHOUT WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE
To install Unexpected, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Unexpected
CPAN shell
perl -MCPAN -e shell install Unexpected
For more information on module installation, please visit the detailed CPAN module installation guide.