NAME

Util::Scoped - Execute arbitrary code upon object destruction


SYNOPSIS

  use Util::Scoped;
  sub some_function {
    my $reset = new Util::Scoped(sub { $value = 0; });
    ...
    $value = 1;
    ...
    ## Upon destruction of $reset $value is set back to zero
  }


DESCRIPTION

The first parameter of the new function is a code reference. Upon destruction, the code reference is executed in the DESTROY function.