Style/UnneededCondition copの自動修正を直した

この PR で直した内容をざっくり。

github.com

<<, ==, + なんかの演算子 (のメソッド) のオペランドif ... else を使っている際に、Style/UnneededCondition cop の auto-correct 対象になると auto-correct されたコードが壊れるというフィードバックがあった。

例えば以下のコードがあるとする。

ary << if foo
  foo
else
  bar
end

auto-correct すると以下のようになる。

ary << foo || bar

結合順位により、このコードは以下のような結合を意味している。

(ary << foo) || bar

表題の PR では、以下のように括弧をつけてauto-correct 前のコードの振る舞いを担保するようにしている。

ary << (foo || bar)