ruby – 如何使用RuboCop强制执行三元括号?

我有一个编码标准,表明三元的初始参数应始终在括号内,而不管表达式如何.

例如. foo =(thing.baz?)? []:thing.bar

以下应被视为违规行为:

例如. foo = thing.baz? ? []:thing.bar

是否有可能使用Rubocop的内置警察来实现这一点,或者这是否需要自定义警察.如果是这样,我将如何实现它?

解决方法

我看到了你的问题,所以我继续为你实施警察.名称是Style / TernaryParentheses,您想要的EnforcedStyle选项是require_parentheses(不是认值).
# .rubocop.yml
Style/TernaryParentheses:
  Enabled: true
  EnforcedStyle: require_parentheses

您可以立即开始使用它,方法是将它放在您的Gemfile中:

gem 'rubocop',git: 'git://github.com/bbatsov/rubocop.git'

或者你可以等待0.42.0版本.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...