# Returns error if last operation failed sub error { my $self = shift; return $self->{'error'}; } # ... sub _error { my ($self, $message) = @_; $self->{'error'} = $message; # <--(1) if (defined &{$self->{'error'}}) { # <--(2) &{$self->{'error'}}($message); # <--(3) } else { STDERR->print("Stripe Webhook Error: $message\n"); } }