【问题标题】:Access POD from another Perl 6 file从另一个 Perl 6 文件访问 POD
【发布时间】:2018-12-02 02:16:23
【问题描述】:

Perl 6 POD documentation 有一节介绍如何使用$=pod 访问当前文件的 POD 文档。没有关于访问另一个文件的 POD 文档的信息。

如何在不更改当前文件的$=pod 的情况下访问另一个文件的 POD 结构?

【问题讨论】:

    标签: raku pod6


    【解决方案1】:

    我在 git@github.com:dmaestro/Module-Pod.git 的 Module::Pod(即将发布)中创建了一个与文件系统无关的解决方案

    use Module::Pod;
    
    # Get all Pod::Block::* objects in the module, from its own $=pod
    my @pod = pod-from-module(<My::Module>);
    

    优点:

    • 没有文件代码的直接评估(即使在 Module::Pod 中)
    • 使用 CompUnit::Repository 和 kin 来定位模块
    • 可以与use-ing 模块一起用于代码中的其他目的
    • 如果模块已经加载,你可以调用它的类型对象

    缺点:

    • Module 直接使用 nqp: 方法,如 Pod::Convenience(可能不是真正的骗局?)
    • 无法从 *.pod 文件中检索 pod

    用于 Pod6 检查测试等。

    【讨论】:

    • 今天发布到生态系统和 CPAN。
    【解决方案2】:

    您现在可以使用Pod::Load 做到这一点。来自the README in the examples directory

      perl6 -e 'use Pod::Load; .perl.say for load("pod-load-clean.pod6")'
    

    请注意,Pod6 文件必须是“干净的”,即不使用任何通常不可用的外部模块,否则可能会失败。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多