0023 Rightward_assignment

Le nouvel opérateur d'assignation =>

La version 3.0 a introduit le Pattern matching, et en particulier l’opérateur d’assignation vers la droite.

0023-rightward_assignment_1.png

Pratique après une longue expression dans une console ou peut-être avec un block if else afin d’améliorer l’indentation.

0023-rightward_assignment_2.png

Cela à l’avantage de lire le code dans le même ordre d’exécution, l’assignation étant faite à la fin. La possibilité d’écrire l’assignation sur la ligne suivante a été abandonnée mais on peut toujours utiliser le \.

0023-rightward_assignment_3.png

⚠️ Ce n’est pas l’équivalent de l’opérateur =. => ne retourne pas de valeur. Lors d’une assignation multiple, une exception est levée (comme en python) si le nombre d’éléments ne correspond pas. Ne permet pas l’assignation dans un tableau.

0023-rightward_assignment_4.png

A quand le downward assignment?! https://bugs.ruby-lang.org/issues/17768

Le lien vers la documentation Ruby du pattern matching.