Некоторые варианты взрыва Array
методов похожи на compact!
, reject!
, flatten!
, uniq!
return nil
, если не было сделано никаких изменений:
[1,[2]].flatten!
# => [1, 2]
[1,2].flatten!
# => nil
[1,[2]].flatten
# => [1, 2]
[1,2].flatten
# => [1, 2]
[1,2,nil].compact!
# => [1, 2]
[1,2].compact!
# => nil
[1,2,nil].compact
# => [1, 2]
[1,2].compact
# => [1, 2]
Если они сделали это таким образом, должна быть причина. Есть идеи, что это может быть?