如何检查函数是否具有POD(Perl文件内文档)?

3

有没有可以告诉我特定函数是否具有POD的库? 我想将其添加到我们的构建系统中。

就像POD文档中所述的约定一样。

=item stuff()

This function does stuff.

=cut

sub stuff {
  ...
}

我希望写出类似于这样的内容

my @functions = get_functions_with_PPI($file);

foreach my $func (@functions) {
  unless ( file_has_POD_for_func($file,$func) ) {
    say "The function $func is undocumented!";
  }
}

我需要一个能够执行如上文档所述的file_has_POD_for_func功能的东西。


2
看起来你正在尝试复制 Pod::Coverage 的功能。如果你想将其纳入你的测试套件中,那么可以使用 Test::Pod::Coverage。 - Andy Lester
2个回答

4

3
在测试套件中,Test::Pod::Coverage 包装了 Pod::Coverage。 - brian d foy

2

不要使用PPI,而是使用像Pod::SimplePod::Parser这样的工具来解析源文件。

请注意,您将需要依赖作者遵循在=item标记或者(更常见的)=head2标记中提到函数的约定。

您可能需要查看类似Pod::Coverage的源代码,它检查模块中是否提到了所有的函数,假设这不是您正在尝试做的事情。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接