B-Utils

 view release on metacpan or  search on metacpan

lib/B/Utils.pm  view on Meta::CPAN

package B::Utils;

use 5.006;
use strict;
use warnings;
use vars qw( @EXPORT_OK %EXPORT_TAGS
    @bad_stashes $TRACE_FH $file $line $sub );

use subs (
    qw( all_starts all_roots anon_sub recalc_sub_cache ),
    qw( walkoptree_simple walkoptree_filtered ),
    qw( walkallops_simple walkallops_filtered ),
    qw( opgrep op_or ),
);
sub croak (@);
sub carp (@);

use Scalar::Util qw( weaken blessed );

=head1 NAME

B::Utils - Helper functions for op tree manipulation

=head1 VERSION

version 0.27

=cut


# NOTE: The pod/code version here and in README are computer checked
# by xt/version.t. Keep them in sync.

our $VERSION = '0.27';



=head1 INSTALLATION

To install this module, run the following commands:

    perl Makefile.PL
    make
    make test
    make install

=cut



use base 'DynaLoader';
bootstrap B::Utils $VERSION;
#bootstrap B::Utils::OP $VERSION;
#B::Utils::OP::boot_B__Utils__OP();
sub dl_load_flags {0x01}

=head1 SYNOPSIS

  use B::Utils;

=cut

use B qw( OPf_KIDS main_start main_root walksymtable class main_cv ppname );

use Exporter ();
@EXPORT_OK = qw(all_starts all_roots anon_subs
    walkoptree_simple walkoptree_filtered
    walkallops_simple walkallops_filtered
    recalc_sub_cache
    opgrep op_or );
%EXPORT_TAGS = ( all => \@EXPORT_OK );
*import      = \&Exporter::import;

@bad_stashes
    = qw(B Carp Exporter warnings Cwd Config CORE blib strict DynaLoader vars XSLoader AutoLoader base);

use List::Util qw( shuffle );



( run in 1.216 second using v1.01-cache-2.11-cpan-5837b0d9d2c )