【发布时间】:2018-02-21 06:06:44
【问题描述】:
我正在玩一个插件,它可以加载可用的东西。 $*REPO 上的文档并不完全在那里,所以我猜了一下。这似乎可行,但我觉得我错过了一些更简单的东西(除了其他位上的常规打高尔夫球):
my @modules = <Digest::MD5 NotThere PrettyDump>;
my @installed = gather installed-modules( @modules );
put "Already installed: @installed[]";
try require ::( @installed[0] );
# is there a better way to do this without eval
my $digest = ::( @installed[0] ).new;
sub installed-modules ( *@candidates ) {
for @candidates -> $module {
put $module, '-' x 15;
my $ds = CompUnit::DependencySpecification.new:
:short-name($module);
if $*REPO.resolve: $ds {
put "Found $module";
take $module;
}
else {
put "Didn't find $module";
}
}
}
【问题讨论】: