Mercurial > pidgin
view libpurple/plugins/perl/scripts/function_list.pl @ 27252:ea9df9bfa921
If get_info_for_jid is passed a full JID, don't spam that JID with IQs.
Looping over all the resources while using the passed-in JID as the to
address was causing us to generate O(N) queries to a member of a MUC (where
N is the number of people in the room).
| author | Paul Aurich <paul@darkrain42.org> |
|---|---|
| date | Thu, 02 Jul 2009 22:03:21 +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; }
