J'ai une méthode et afin de vérifier si un bloc est passé, je fais ce qui suit:
if block_given?
res = yield(array[i], array[i+1])
else
res = array[i] - array[i+1]
end
Cependant RuboCop me donne un avertissement que je ne comprends pas vraiment dans le if block_given?
ligne:
Utilisez le retour du conditionnel pour l'affectation et la comparaison des variables
Y a-t-il une autre manière plus rubyiste de faire cela?
Merci
Ce que l'avertissement vous dit de faire est:
res = if block_given?
yield(array[i], array[i+1])
else
array[i] - array[i+1]
end
C'est-à-dire, avoir une seule affectation au lieu de deux (ou même plus).