MMCT TEAM
Server IP : 128.199.20.84  /  Your IP : 172.69.17.83
Web Server : Apache/2.4.41 (Ubuntu)
System : Linux competent-maruti 5.4.0-128-generic #144-Ubuntu SMP Tue Sep 20 11:00:04 UTC 2022 x86_64
User : www-data ( 33)
PHP Version : 8.0.20
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_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF
Directory (0755) :  /usr/share/doc/liberror-perl/examples/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/doc/liberror-perl/examples/example.pl
use lib '.';
use Error qw(:try);

use strict;
use warnings;

@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();


my $x = prior Error;

print "--\n",$x->stacktrace;

unless(defined def()) {
    my $x = prior Error 'main';
    print "--\n",0+$x,"\n",$x; # 0+$x converts to Integer via "value" method
}


MMCT - 2023