UnusedPrivateMethod to be detect use of methods via Method#to_proc

このエントリーをはてなブックマークに追加

UnusedPrivateMethod to be detect use of methods via Method#to_proc https://github.com/troessner/reek/pull/1647

何となく嫌な感じのするコードを指摘してくれる reek という gem を見つけて使っている。
少し厳しいが面白い gem だと思っている。

今回はその reek にコントリビュートした。

以下のようなケースで foo メソッドは使用されているが、UnusedPrivateMethod として警告が上がっていたようだった。

# Foos the bars
class Foo
  def bar(arr)
    arr.each(&method(:foo))
  end

  private

  def foo(it)
    puts it
  end
end

そこで、Method#to_procを使用した場合でも Private なメソッドを使用したとみなすように修正した。
実際に reek 自身も reek を走らせるようになっているので、これも指摘されるのか...となったことはあったが、これを意識していると確かに良さそうと思うことはあった。