package Error::Pure::Always;
use strict;
use warnings;
use Error::Pure qw(err);
our $VERSION = 0.07;
my %OLD_SIG;
# Default error type.
$ENV{'ERROR_PURE_TYPE'} ||= 'Die';
BEGIN {
@OLD_SIG{qw(__DIE__)} = @SIG{qw(__DIE__)};
$SIG{__DIE__} = sub {
my $err = shift;
$err =~ s/ at .*\n//ms;
$Error::Pure::LEVEL = 5;
err $err;
};
}
END {
@SIG{qw(__DIE__)} = @OLD_SIG{qw(__DIE__)};
}
1;
__END__
=pod
=encoding utf8
=head1 NAME
Error::Pure::Always - Perl module for rewrite die by err from Error::Pure module.
=head1 SYNOPSIS
use Error::Pure::Always;
perl -MError::Pure::Always perl_script.pl
=head1 EXAMPLE1
use strict;
use warnings;
use Error::Pure::Always;
# Set env error type.
$ENV{'ERROR_PURE_TYPE'} = 'Die';
# Error.
die '1';
# Output:
# 1 at example1.pl line 9.
=head1 EXAMPLE2
use strict;
use warnings;
use Error::Pure::Always;
# Set env error type.
$ENV{'ERROR_PURE_TYPE'} = 'ErrorList';
# Error.
die '1';
# Output something like:
# #Error [path_to_script:12] 1
=head1 EXAMPLE3
use strict;
use warnings;
use Error::Pure::Always;
# Set error type.
$Error::Pure::TYPE = 'AllError';
# Error.
die '1';
# Output something like:
# ERROR: 1
# main err path_to_script 12
=head1 DEPENDENCIES
L<Error::Pure>.
=head1 SEE ALSO
=over
=item L<Task::Error::Pure>
Install the Error::Pure modules.
=back
=head1 ACKNOWLEDGMENTS
Thanks for L<Carp::Always> module.
=head1 REPOSITORY
L<https://github.com/michal-josef-spacek/Error-Pure-Always>
=head1 AUTHOR
Michal Josef Špaček L<mailto:skim@cpan.org>
L<http://skim.cz>
=head1 LICENSE AND COPYRIGHT
© 2012-2020 Michal Josef Špaček
BSD 2-Clause License
=head1 VERSION
0.07
=cut