gpt4 book ai didi

perl - 我如何计算我的 perl 代码中每个 sub 的相应行?

转载 作者:行者123 更新时间:2023-12-04 22:16:46 26 4
gpt4 key购买 nike

我正在重构相当大的代码体,在思考从哪里继续下去时,我遇到了一个深奥的问题。这段代码在很大程度上需要的是缩短潜艇。

因此,将某种统计信息收集器指向目录是非常有利的,它将遍历所有 .pm、.cgi 和 .pl 文件,找到所有子文件(如果它只获取命名的文件,我很好)并给我一张所有表格,以及他们的行数。

我粗略地看了一眼 PPI,但找不到任何直接相关的东西,有些工具可能是合适的,但使用起来相当复杂。

有没有更简单的模块可以做这样的事情?

如果做不到这一点,你会怎么做?

编辑:

玩了一下 PPI 并创建了一个脚本来收集代码库上的相关统计信息:http://gist.github.com/514512

最佳答案

my $document = PPI::Document->new($file);

# Strip out comments and documentation
$document->prune('PPI::Token::Pod');
$document->prune('PPI::Token::Comment');

# Find all the named subroutines
my $sub_nodes = $document->find(
sub { $_[1]->isa('PPI::Statement::Sub') and $_[1]->name } );

print map { sprintf "%s %s\n", $_->name, scalar split /\n/, $_->content } @$sub_nodes;

关于perl - 我如何计算我的 perl 代码中每个 sub 的相应行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3435428/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com