Perlcritic认为哈希是用逗号分隔的语句

时间:2013-04-30 01:49:48

标签: perl perl-critic

我得到了一个perlcritic违规,对于以下代码块没有任何意义:

$object->insert(
    {   
        %defaults,
        name => 'TEST',
        line => 1,
        keywords => 'TEST OBJECT',
        %overrides
    }
);

Perlcritic 1.117说“逗号用于在第880行第4栏中分隔陈述。参见PBP第68,71页。”

我只能假设perlcritic错误地将这些哈希识别为代码块。

我通过在每个这样的“块”的顶部插入“## no critic(ProhibitCommaSeparatedStatements)”来禁用它,但有没有更好的方法来解决这个问题?

1 个答案:

答案 0 :(得分:2)

我认为问题在于它被%defaults%overrides混淆了。我敢打赌,如果你删除了那些,它就不会再抱怨了。

前几天我遇到了这件事,还没有写好票。