Se você tiver que iterar sobre um monte de objetos e fazer uma matriz uniq de valores de cada objeto

Digamos que você tenha um array de objetos que você precisa para chamar um método em cada objeto e você precisa fazer um array uniq desses valores
Você pode usar algo como

values_a = []
list
.each do |l|
values_a
<< l unless values_a.include?(l)
end

mas usar uniqneste caso é melhor do que usar include?tempos né

values_a = []
list
.each do |l|
values_a
<< l
end
val
`ues_a = values_a.uniq

a menos que você esteja lidando com um grande número de registros, isso deve funcionar melhor.

você também pode usar conjuntos, Set#addmas é muito pior com o desempenho