- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
perlcritic正在提示以下代码中第一个 eval 行上的“eval”[BuiltinFunctions::ProhibitStringyEval] 的表达式形式:
use strict;
use warnings;
use feature qw/say/;
my $hasTwitter = 1;
my $validEmail = 0;
my $rule = '${hasTwitter} | ${validEmail}';
my $result = eval $rule;
say "Result -> $result";
$result = eval { $rule };
say "Result -> $result";
我尝试使用 eval {} 来修复 perlCritic,但它没有返回预期结果。
响应是:
Result -> 1
Result -> ${hasTwitter} | ${validEmail}
是否有使用字符串插值的解决方法?这个想法是在配置文件上设置一组规则,并让代码读取并评估它们。
谢谢
最佳答案
批评家的目的是让你思考:表达式作为字符串存在是否有原因?陷阱众多、安全风险高,能否避免?或者更确切地说,这些风险和问题是否值得做一些工作来避免?
对于初学者,您可以使用以下内容吗?
my $rule = sub { $hasTwitter || $validEmail };
my $result = $rule->();
或者也许
my $rule = 'has_twitter_or_email';
my %rules = (
has_twitter_or_email => sub { $hasTwitter || $validEmail },
);
my $result = $rules{$rule}->();
关于perl - 使用 eval 插入变量时避免使用 PerlCritic,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32743868/
是否可以将另一个配置文件“添加”到 perlcritic 默认配置文件,或者使用多个配置文件运行 perlcritic?我不想跳过/替换默认配置文件。我需要为其添加额外的配置文件。 I know我可以
我正在使用 perlcritic与 perltidy当应用其他规则时,我收到以下错误消息: Code is not tidy at line 1, near 'package MyPackage;'.
我正在尝试开始使用 Perlcritic,并且我正在改进我自己的配置,忽略所有我不同意或认为不适合我的规则。 我知道我可以使用 .perlcrirticrc 文件来做到这一点,并且我可以使用该文件中的
我有一个脚本,我正在尝试使用 perlcritic 消除不良做法。 我的一行如下: open(my($FREESPCHK), $cmdline ) || &zdie($MSG_PASSTHRU,"Er
在调试一些较旧的 perl 代码时,我使用 perl critic 来发现错误。我经常偶然发现这个“循环迭代器不是词法”策略: Perl::Critic::Policy::Variables::Req
perlcritic正在提示以下代码中第一个 eval 行上的“eval”[BuiltinFunctions::ProhibitStringyEval] 的表达式形式: use strict; use
我正在阅读 perlcritic 文档以避免反引号并在此处使用 IPC::Open3: http://perl-critic.stacka.to/pod/Perl/Critic/Policy/Inpu
有一个简单的模块 package Rrr; use 5.014; use warnings; use namespace::sweep; use Moo; use Method::Signatures
我正在尝试从我的完整性检查中删除一个错误 [当我将代码推送到我的 git 存储库时,有一个钩子(Hook)可以使用 perltidy 检查代码。 & critic ... 使用 tidyall作为处理
我想抑制子进程中的输出并只读取 stderr。 perlfaq8建议做以下事情: # To capture a program's STDERR, but discard its STDOUT: us
我正在寻找 PerlCritic 的等价物对于 PHP。 PerlCritc 是一个静态源代码分析器,它对代码进行 qritiques,并就从未使用的变量到处理数据的不安全方式到几乎所有内容的所有内容
我正在尝试在 Komodo 中启用 PerlCritic 支持。 Komodo IDE 5.1 (Win 32) 的制造商 ActiveState 的官方说法是: “要启用 PerlCritic 支持
我是一名优秀的程序员,十分优秀!