B::Showlex(3) - phpMan

Command: man perldoc info search(apropos)  


B::Showlex(3pm)                  Perl Programmers Reference Guide                 B::Showlex(3pm)



NAME
       B::Showlex - Show lexical variables used in functions or files

SYNOPSIS
               perl -MO=Showlex[,-OPTIONS][,SUBROUTINE] foo.pl

DESCRIPTION
       When a comma-separated list of subroutine names is given as options, Showlex prints the
       lexical variables used in those subroutines.  Otherwise, it prints the file-scope lexicals
       in the file.

EXAMPLES
       Traditional form:

        $ perl -MO=Showlex -e 'my ($i,$j,$k)=(1,"foo")'
        Pad of lexical names for comppadlist has 4 entries
        0: SPECIAL #1 &PL_sv_undef
        1: PVNV (0x9db0fb0) $i
        2: PVNV (0x9db0f38) $j
        3: PVNV (0x9db0f50) $k
        Pad of lexical values for comppadlist has 5 entries
        0: SPECIAL #1 &PL_sv_undef
        1: NULL (0x9da4234)
        2: NULL (0x9db0f2c)
        3: NULL (0x9db0f44)
        4: NULL (0x9da4264)
        -e syntax OK

       New-style form:

        $ perl -MO=Showlex,-newlex -e 'my ($i,$j,$k)=(1,"foo")'
        main Pad has 4 entries
        0: SPECIAL #1 &PL_sv_undef
        1: PVNV (0xa0c4fb8) "$i" = NULL (0xa0b8234)
        2: PVNV (0xa0c4f40) "$j" = NULL (0xa0c4f34)
        3: PVNV (0xa0c4f58) "$k" = NULL (0xa0c4f4c)
        -e syntax OK

       New form, no specials, outside O framework:

        $ perl -MB::Showlex -e \
           'my ($i,$j,$k)=(1,"foo"); B::Showlex::compile(-newlex,-nosp)->()'
        main Pad has 4 entries
        1: PVNV (0x998ffb0) "$i" = IV (0x9983234) 1
        2: PVNV (0x998ff68) "$j" = PV (0x998ff5c) "foo"
        3: PVNV (0x998ff80) "$k" = NULL (0x998ff74)

       Note that this example shows the values of the lexicals, whereas the other examples did
       not (as they're compile-time only).

   OPTIONS
       The "-newlex" option produces a more readable "name => value" format, and is shown in the
       second example above.

       The "-nosp" option eliminates reporting of SPECIALs, such as "0: SPECIAL #1 &PL_sv_undef"
       above.  Reporting of SPECIALs can sometimes overwhelm your declared lexicals.

SEE ALSO
       B::Showlex can also be used outside of the O framework, as in the third example.  See
       B::Concise for a fuller explanation of reasons.

TODO
       Some of the reported info, such as hex addresses, is not particularly valuable.  Other
       information would be more useful for the typical programmer, such as line-numbers, pad-
       slot reuses, etc..  Given this, -newlex isnt a particularly good flag-name.

AUTHOR
       Malcolm Beattie, "mbeattie AT sable.uk"



perl v5.16.3                                2013-03-04                            B::Showlex(3pm)

Generated by $Id: phpMan.php,v 4.55 2007/09/05 04:42:51 chedong Exp $ Author: Che Dong
On Apache
Under GNU General Public License
2024-04-25 02:24 @18.222.67.251 CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0!Valid CSS!