2020-02-26
Set#add?
を知った。
require 'set' s = Set.new p s.add?(1) # => #<Set: {1}> p s.add?(1) # => nil
自身に引数のitemを追加し、追加する前にすでにそのitemを持っていたらnilを返し、追加が成功したらselfを返す。
next if set.include?(item) set << item
上のようなコードが次のように書けて便利。
next unless set.add?(item)
ただ、if
とunless
が逆になるので少し混乱した。
Kibelaのgraphql-rubyのv1.10.xへのアップデートができていなくて、調べてたらすでにIssueが上がっていたので追いコメントした。