SYNOPSIS # Wrap all subs in default code to warn on entry/exit, displaying args and return values... use Devel::WrapExports; # The same thing, but ignore the specified packages and subs... use Devel::WrapExports exempt_pkgs => [ qw( Devel Carp CGI ) ], exempt_subs => [ qw( Nevermind::me ) ]; # Use my own subs for tracing instead of the defaults... use Devel::WrapExports pre => q{ sub { "custom pre-wrapper..." } }, post => q{ sub { "custom post-wrapper..." } }; # Run as script to list fully-qualified names of each symbol (sub or otherwise) in the top-level scope... $ perl /path/to/Devel/WrapExports.pm