【发布时间】:2014-08-29 20:17:12
【问题描述】:
我想知道 Perl 相当于 Ruby 的 pry 是什么?
假设我有一段 ruby 代码
CSV.foreach('teamss.csv', headers: true) do |row|
binding.pry
team_array << row.to_hash
end
我可以插入该 binding.pry,然后转到命令行并进行撬动。从这里我可以输入 team_array 并通过循环获取该迭代中当前散列中的内容的输出。然后我可以按下一步并通过循环查看下一次迭代。这样我就可以在终端中逐行跟踪代码中发生的事情。
如果我想在 Perl 中做这样的事情,有什么可用的吗?这让我可以看到每次迭代时循环中究竟发生了什么,或者至少让我看到完成的循环实际上吐出什么。这样我就可以看到大型代码库中的哪些地方可能出现故障。
如果我想把这样的东西放在这个 perl 代码块中。我在问一个例子,它会是什么样子。在下面的代码块或您自己选择的代码块中。或者一个简单的是的,你可以使用它,或者没有这样的东西。
foreach my $secert (@secert) {
my @example = $self->getMissingSecerts({secert=>$secert});
next if !@example;
$self->send_page({page=>"checksecerts/secert", param=>{secert=>$secert, example=>\@example}});
}
【问题讨论】:
-
你能用英语而不是 Ruby 准确解释你想要做什么吗?
-
基本上是在寻找一种方法来逐行跟踪给定数据结构中的内容。
-
受这个问题的启发,我刚刚在 CPAN 上发布了Pry。它与同名的 Ruby 工具绝不相同,但应该可用于类似目的。
-
非常感谢。我刚刚注意到这一点,再高兴不过了。