SQL::Translator::Role::Error - Error setter/getter for objects and classes
In the class consuming the role:
package Foo;
use Moo;
with qw(SQL::Translator::Role::Error);
sub foo {
...
return $self->error("Something failed")
unless $some_condition;
...
}
In code using the class:
Foo->foo or die Foo->error;
# or
$foo->foo or die $foo->error;
This Moo::Role provides a method for getting and setting error on a class or
object.
If called with an argument, sets the error message and returns undef, otherwise
returns the message.
As an implementation detail, for compatibility with Class::Base,
the message is stored in
"$object->{_ERROR}" or
$Class::ERROR, depending on whether the invocant is
an object.
- •
- "Error Handling" in Class::Base