4 ms·
Further off-topic, but I almost exclusively see tap used as some kind of clever way around a return line, e.g. instead of: def build_hash_or_whatever
by tvon 11y ago
Further off-topic, but I almost exclusively see tap used as some kind of clever way around a return line, e.g. instead of:
def build_hash_or_whatever
hash = Hash.new
hash[:foo] = some_generating_method
hash[:bar] = "some value" if whatever?
# More hash construction nonsense
hash
end
With tap it is:
def build_hash_or_whatever
Hash.new.tap do |hash|
hash[:foo] = some_generating_method
hash[:bar] = "some value" if whatever?
# More hash construction nonsense
end
end
I think the tap-form is significantly worse and I don't understand the aversion to a single line that clearly shows what you are returning.