Perl Diver 2.31
Main Environment Variables Perl Default Values Perl Config - Summary Perl Config - Full Installed Modules List Directory uptime Docs

Module Documentation
Details and documentation about a specific module, including version and documentation (if available). Note that while links to perldoc.com and search.cpan.org are provided, the module may be part of a larger distribution. If you reach a File Not Found page on either site, please try the parent module.

B::Utils::OP

Name B::Utils::OP
Version 0.27
Located at /usr/lib64/perl5/vendor_perl
File /usr/lib64/perl5/vendor_perl/B/Utils/OP.pm
Is Core No
Search CPAN for this module B::Utils::OP
Documentation B::Utils::OP
Module Details B::Utils::OP

NAME

B::Utils::OP - op related utility functions for perl


VERSION

version 0.27


SYNOPSIS

  use B::Utils::OP qw(parent_op return_op);
  sub foo {
    my $pop = parent_op(0);
    my $rop = return_op(0);
  }


DESCRIPTION

  sub foo {
    dothis(1);
    find_things();
    return;
  }

has the following optree:

 d  <1> leavesub[1 ref] K/REFC,1 ->(end)
 -     <@> lineseq KP ->d
 1        <;> nextstate(main -371 bah.pl:8) v/2 ->2
 5        <1> entersub[t2] vKS/TARG,3 ->6
 -           <1> ex-list K ->5
 2              <0> pushmark s ->3
 3              <$> const[IV 1] sM ->4
 -              <1> ex-rv2cv sK/3 ->-
 4                 <#> gv[*dothis] s ->5
 6        <;> nextstate(main -371 bah.pl:9) v/2 ->7
 9        <1> entersub[t4] vKS/TARG,3 ->a
 -           <1> ex-list K ->9
 7              <0> pushmark s ->8
 -              <1> ex-rv2cv sK/3 ->-
 8                 <#> gv[*find_things] s/EARLYCV ->9
 a        <;> nextstate(main -371 bah.pl:10) v/2 ->b
 c        <@> return K ->d
 b           <0> pushmark s ->c

The find_things in foo is called in the entersub in #9. If you call parent_op function with level 0, you get the nextstate op that is before the entersub, which is #6. And return_op gives you the next op that the caller is returning to, in this case, the nextstate in #a.

EXPORTED PERL FUNCTIONS

parent_op($lv)
In runtime, returns the the B::OP manpage object whose next is the entersub of the current context up level $lv

return_op($lv)
In runtime, returns the the B::OP manpage object that the current context is returning to at level $lv

B::CV METHODS

$cv->NEW_with_start($root, $start)
Clone the $cv but with different $root and $start


AUTHORS

Chia-liang Kao <clkao@clkao.org>


COPYRIGHT

Copyright 2008 by Chia-liang Kao

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html

Perl Diver brought to you by ScriptSolutions.com © 1997- 2024