0033 Yield_self

Pour le chainage des méthodes

La méthode yield_self ou then, définie dans Kernel, renvoie le résultat du bloc appelé avec self en argument.

0033-yield_self_1.png

L’intérêt premier est le chainage des méthodes.

0033-yield_self_2.png

Sans bloc, la méthode retourne un Enumerator permettant de filtrer, transformer, …

0033-yield_self_3.png

Vous aurez remarqué que then est un mot reservé, mais Ruby permet tout de même de définir une telle méthode, et il a donc été choisi intentionnellement : note#14, note#17.

Les liens vers la documentation Ruby de yield_self et then.