Data-Object-Role-Tryable
view release on metacpan or search on metacpan
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"
<https://github.com/iamalnewkirk/data-object-role-tryable/blob/master/LICENSE>.
PROJECT
Wiki <https://github.com/iamalnewkirk/data-object-role-tryable/wiki>
Project <https://github.com/iamalnewkirk/data-object-role-tryable>
Initiatives
<https://github.com/iamalnewkirk/data-object-role-tryable/projects>
Milestones
<https://github.com/iamalnewkirk/data-object-role-tryable/milestones>
Contributing
<https://github.com/iamalnewkirk/data-object-role-tryable/blob/master/CONTRIBUTE.md>
Issues
<https://github.com/iamalnewkirk/data-object-role-tryable/issues>
( run in 0.424 second using v1.01-cache-2.11-cpan-39bf76dae61 )