2016-07-07 14 views
6

私は、三項の最初の引数は、式に関係なく常に括弧の中にあるべきであることを示唆するコーディング標準を持っています。RuboCopで三括弧を強制するにはどうしたらいいですか?

など。 foo = (thing.baz?) ? [] : thing.bar

以下は違反とみなされるべきである。

例えばfoo = thing.baz? ? [] : thing.bar

Rubocopに組み込まれているCopsでこれを実現することは可能ですか、これはカスタムCopを必要としますか?もしそうなら、どうすれば実装できますか?

+0

AFIAKのように、このような警官はありません。 [rubocopのテスト](https://github.com/nevir/rubocop-rspec/tree/master/lib/rubocop/cop/rspec)にはカスタムの作成方法の例と簡単なドキュメントがあります。 – mudasobwa

答えて

12

私はあなたの質問を見ましたので、私は先に進み、あなたのために警官を実装しました。名前は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のリリースを待つことができます。

+0

それは素晴らしいです。どうもありがとうございました! – qnm

+0

心配はいりません。バグレポートや機能要求をGitHubリポジトリに記録することをためらってはいけません。それはすべて非常に有用です。 :-) – Drenmi

関連する問題