Profil supprimé | Ouai je vois mais en fait c'est plus compliqué que ça, j'ai plusieurs arguments de méthode.
Un requis, deux optionnels.
D'ailleurs j'en profite pour te demander, il vaut mieux définir la méthode comme ça.
Code :
- def meth(arg1, opt1=[], opt2=false)
- end
|
ou
Code :
- def meth(arg1, opt1: [], opt2: false)
- end
|
Ce que j'ai compris, c'est que la deuxième façon de faire, je dois appeler la méthode avec opt1: value
Ce que je voulais faire au départ:
Code :
- def meth(arg1, opt1=[], opt2=false)
- opt1 = [opt1] if !opt1.is_a?(Array)
- end
- meth(arg1, ["un", "deux"])
- meth(arg1, "un" )
|
Avec ce que tu m'as proposé, le mieux ce serait de faire ça non?
Code :
- def meth(arg1, *opt1, opt2: false)
- end
- meth(arg1, "un" )
- meth(arg1, "un", opt2: true)
- meth(arg1, "un", "deux", "trois", opt2: true)
|
Merci |