Server IP : 80.241.246.6 / Your IP : 216.73.216.129 Web Server : Apache/2.4.25 (Debian) System : Linux kharagauli 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64 User : www-data ( 33) PHP Version : 7.0.33-0+deb9u12 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/doc/liberror-perl/examples/ |
Upload File : |
use lib '.'; use Error qw(:try); @Error::Bad::ISA = qw(Error); $Error::Debug = 1; # turn on verbose stacktrace sub abc { try { try { throw Error::Simple("a simple error"); } catch Error::Simple with { my $err = shift; throw Error::Bad(-text => "some text"); } except { return { Error::Simple => sub { warn "simple" } } } otherwise { 1; } finally { warn "finally\n"; }; } catch Error::Bad with { 1; }; } sub def { unlink("not such file") or record Error::Simple("unlink: $!", $!) and return; 1; } abc(); $x = prior Error; print "--\n",$x->stacktrace; unless(defined def()) { $x = prior Error 'main'; print "--\n",0+$x,"\n",$x; }