NAME

Devel::Events::Generator::Require - Event generator for loading of code using require.

SYNOPSIS

use Devel::Events::Generator::Require;

my $g = Devel::Events::Generator::Require->new( handler => $h );

$g->enable();

# all calls to require() will generate a try_require and a require_finished event

$g->disable();

# events disabled

DESCRIPTION

This generator allows instrumentation of module/file loading via require. This includes use statements.

EVENTS

try_require

Fired before require actually happens.

file

The file that require was given.

Note that when doing <require Foo::Bar>, the parameter passed into CORE::require is actually <Foo/Bar.pm>, and not the module name.

require_finished

Fired at the end of every require, successful and unsuccessful.

file

The file that require was given.

matched_file

The entry of file in %INC.

error

The load error, if any.

return_value

The value returend by the file. This is always a scalar.

METHODS

enable

Make this instance the enabled one (disabling any other instance which is enabled).

This only applies to the object_bless method.

disable

Disable this instance. Will stop generating object_bless events. =item try_require

Generates the try_require event.

require_finished

Generates the require_finished event.