NAME
Data::Object::Role::Tryable
ABSTRACT
Tryable Role for Perl 5
SYNOPSIS
package Example;
use Moo;
with 'Data::Object::Role::Tryable';
package main;
use routines;
my $example = Example->new;
DESCRIPTION
This package provides a wrapper around the Data::Object::Try class which provides an object-oriented interface for performing complex try/catch operations.
METHODS
This package implements the following methods:
try
try(CodeRef | Str $method) : InstanceOf['Data::Object::Try']
The try method takes a method name or coderef and returns a Data::Object::Try object with the current object passed as the invocant which means that try
and finally
callbacks will receive that as the first argument.
- try example #1
-
# given: synopsis my $tryer = $example->try(fun(@args) { [@args] }); # $tryer->result(...)
- try example #2
-
# given: synopsis my $tryer = $example->try(fun(@args) { die 'tried'; }); $tryer->default(fun($error) { return ['tried'] if $error =~ 'tried'; return [$error]; }); # $tryer->result(...)
AUTHOR
Al Newkirk, awncorp@cpan.org
LICENSE
Copyright (C) 2011-2019, Al Newkirk, et al.
This is free software; you can redistribute it and/or modify it under the terms of the The Apache License, Version 2.0, as elucidated in the "license file".