summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorMichael G. Schwern <schwern@pobox.com>2001-04-21 17:11:12 +0100
committerJarkko Hietaniemi <jhi@iki.fi>2001-04-21 15:23:38 +0000
commit87a42246e293661e2d9c528a536402d6ca8fcb1e (patch)
tree7a93f397f85ac653324fd72296974ecb4928583e /ext
parentcd4e1efaf9a1b7be76cd92aca2942583177ae5ed (diff)
downloadperl-87a42246e293661e2d9c528a536402d6ca8fcb1e.tar.gz
B::walksymtable improperly documented?
Message-ID: <20010421161112.L19736@blackrider.blackstar.co.uk> p4raw-id: //depot/perl@9770
Diffstat (limited to 'ext')
-rw-r--r--ext/B/B.pm20
1 files changed, 16 insertions, 4 deletions
diff --git a/ext/B/B.pm b/ext/B/B.pm
index d00f51229a..97dd0c7e4c 100644
--- a/ext/B/B.pm
+++ b/ext/B/B.pm
@@ -843,12 +843,24 @@ DEBUG argument is non-zero, it sets the debugging flag to that. See
the description of C<walkoptree> above for what the debugging flag
does.
-=item walksymtable(SYMREF, METHOD, RECURSE)
+=item walksymtable(SYMREF, METHOD, RECURSE, PREFIX)
Walk the symbol table starting at SYMREF and call METHOD on each
-symbol visited. When the walk reached package symbols "Foo::" it
-invokes RECURSE and only recurses into the package if that sub
-returns true.
+symbol (a B::GV object) visited. When the walk reaches package
+symbols (such as "Foo::") it invokes RECURSE, passing in the symbol
+name, and only recurses into the package if that sub returns true.
+
+PREFIX is the name of the SYMREF you're walking.
+
+For example...
+
+ # Walk CGI's symbol table calling print_subs on each symbol.
+ # Only recurse into CGI::Util::
+ walksymtable(\%CGI::, 'print_subs', sub { $_[0] eq 'CGI::Util::' },
+ 'CGI::');
+
+print_subs() is a B::GV method you have declared.
+
=item svref_2object(SV)