Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
B::Utils::OP(3)	      User Contributed Perl Documentation      B::Utils::OP(3)

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 B::OP object	whose next is the "entersub"
	   of the current context up level $lv

       return_op($lv)
	   In runtime, returns the B::OP 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 v5.32.1			  2015-07-22		       B::Utils::OP(3)

NAME | VERSION | SYNOPSIS | DESCRIPTION | AUTHORS | COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=B::Utils::OP&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help