パッケージ内のすべてのサブを一覧表示するには、いくつかの方法があります。
sub list_methods {
my $package = shift;
no strict 'refs';
return grep { defined &{"$package\::$_"} } keys %{"$package\::"}
}
ただし、パッケージが「File::Basename」などの他のパッケージを「使用」する場合、「fileparse」などのサブも同様にリストされます。パッケージを「使用」する代わりに「要求」しようとしましたが、問題は解決できます。一方、パッケージを「必要とする」場合は、サブのフル パスを指定する必要があります。
何か考えはありますか?