访问不同发行版的资源

jjm*_*elo 4 raku

%*RESOURCES作为动态变量,您可以访问Distribution::Resource特定分布中的每个对象。这些对象与它一起安装,因此它们就在那里,可用。

但是,我找不到一种记录在案的方式,更不用说特定的方式,可以从一个发行版访问另一个发行版的资源。例如,假设您希望从Foo作为分发资源安装的数据进行访问Bar。我可以想象实例化一个Distribution::Resources对象;为了实例化它,你需要repo(好吧,我可以忍受),但是dist-id. 很可能有一种从 dist-name 中获取 dist-id 的规范方法......但我在这里迷路了。任何人都可以帮忙吗?

更新:我正在检查这个,它归结为:使用zef。它包括用于“查找”“身份”(由名称和元数据标识的发行版)所在位置的逻辑,您可以从那里通过解析输出来定位 ID。但是,那里没有文档,也不清楚它的公共 API 是什么,除了它可能在此代码中的某个地方。

然而,很明显,首先您必须找到您需要资源的发行版,从那里您将获得一个 ID,然后使用该 ID 来实例化上面的对象。伊什。

uge*_*exe 5

没有公开的方法可以做到这一点。dist-id 是一个实现细节,因此它不在文档或规范中。这并不明显,因为您根本不应该这样做。是的,zef 使用它,但这是一个特例,而不是一个例子。