sub _error { my( $self, $message ) = @_; $self->{last_error} = $message; croak $message if $self->{autodie}; }; sub do_something { my $res = eval { $webhook->execute(...); }; if( my $err = $@ ) { $self->_error( $err ); }; }