Mercurial > pidgin
view libpurple/plugins/perl/scripts/function_list.pl @ 32819:2c6510167895 default tip
propagate from branch 'im.pidgin.pidgin.2.x.y' (head 3315c5dfbd0ad16511bdcf865e5b07c02d07df24)
to branch 'im.pidgin.pidgin' (head cbd1eda6bcbf0565ae7766396bb8f6f419cb6a9a)
| author | Elliott Sales de Andrade <qulogic@pidgin.im> |
|---|---|
| date | Sat, 02 Jun 2012 02:30:49 +0000 |
| parents | fab49a6e9b25 |
| children |
line wrap: on
line source
$MODULE_NAME = "List all Purple:: (and Pidgin::) functions"; use Purple; # Uncomment this to print the Pidgin:: functions as well. #use Pidgin; # All the information Purple gets about our nifty plugin %PLUGIN_INFO = ( perl_api_version => 2, name => "Perl: $MODULE_NAME", version => "0.1", summary => "Print to standard output all the functions under the Purple:: (and Pidgin::) packages", description => "Print to standard output all the functions under the Purple:: (and Pidgin::) packages", author => "Etan Reisner <deryni\@gmail.com>", url => "http://sourceforge.net/users/deryni9/", id => "functionlist", load => "plugin_load", unload => "plugin_unload" ); sub plugin_init { return %PLUGIN_INFO; } sub print_array { my $array = shift; my @arr = sort @$array; foreach $mod (@arr) { my @sub; foreach $key (sort keys %{$mod}) { if ($key =~ /::$/) { push @sub, "$mod$key"; } else { print "$mod$key\n"; } } print_array(\@sub); } } sub plugin_load { my $plugin = shift; my @purplearray; my @pidginarray; foreach $key (sort keys %Purple::) { if ($key =~ /::$/) { push @purplearray, "Purple::$key"; } else { print "Purple::$key\n"; } } print_array(\@purplearray); foreach $key (sort keys %Pidgin::) { if ($key =~ /::$/) { push @pidginarray, "Pidgin::$key"; } else { print "Pidgin::$key\n"; } } print_array(\@pidginarray); } sub plugin_unload { my $plugin = shift; }
