j'ai rencontré un problème avec la complexité cyclomatique trop élevée pour cette méthode rubis:Une meilleure façon d'écrire des méthodes qui renvoient des méthodes basées sur un ensemble de conditions dans Ruby
def find_value(a, b, lookup_value)
return find_x1(a, b) if lookup_value == 'x1'
return find_x2(a, b) if lookup_value == 'x2'
return find_x3(a, b) if lookup_value == 'x3'
return find_x4(a, b) if lookup_value == 'x4'
return find_x5(a, b) if lookup_value == 'x5'
return find_x6(lookup_value) if lookup_value.include? 'test'
end
Est-il possible de écrire ceci sans avoir à utiliser eval
?
peut-être '# public_send' en fonction de la mise en œuvre en particulier s'il y a aussi des méthodes privées 'find_XXX' – engineersmnky