[ruby-core:122520] [Ruby Feature#21435] Kernel#optional as a conditional #then
From:
"Alexander.Senko (Alexander Senko) via ruby-core" <ruby-core@...>
Date:
2025-06-12 06:44:53 UTC
List:
ruby-core #122520
SXNzdWUgIzIxNDM1IGhhcyBiZWVuIHVwZGF0ZWQgYnkgQWxleGFuZGVyLlNlbmtvIChBbGV4YW5k ZXIgU2Vua28pLg0KDQoNCkB6dmVyb2ssIHdoYXQgZG8geW91IHRoaW5rIGFib3V0IGl0PyBNYXkg YCN0aGVuYCBnZXQgYSBjb25kaXRpb25hbCBjb3VudGVycGFydD8NCg0KLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRmVhdHVyZSAjMjE0MzU6IEtlcm5lbCNvcHRpb25h bCBhcyBhIGNvbmRpdGlvbmFsICN0aGVuDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1 ZXMvMjE0MzUjY2hhbmdlLTExMzc0Mg0KDQoqIEF1dGhvcjogQWxleGFuZGVyLlNlbmtvIChBbGV4 YW5kZXIgU2Vua28pDQoqIFN0YXR1czogT3Blbg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQ0KIyMgV2hhdA0KDQpXaGVuIGNoYWluaW5nLCBJIG5lZWQgc29tZXRpbWVz IHRvIGFwcGx5IHNvbWUgY2hhbmdlcyBjb25kaXRpb25hbGx5LCBsaWtlIHRoaXM6DQpgYGBydWJ5 DQpAcmVjb3JkID0gUmVjb3JkLmZpbmQocmVjb3JkX2lkKQ0KICAudGhlbiB7IGl0LnJlc3BvbmRf dG8/KDpkZWNvcmF0ZSkgPyBpdC5kZWNvcmF0ZSA6IGl0IH0NCmBgYA0KDQpJdCB3b3VsZCBiZSBn cmVhdCB0byBEUlkgaXQgYSBiaXQ6DQpgYGBydWJ5DQpAcmVjb3JkID0gUmVjb3JkLmZpbmQocmVj b3JkX2lkKQ0KICAub3B0aW9uYWwgeyBpdC5kZWNvcmF0ZSBpZiBpdC5yZXNwb25kX3RvPyA6ZGVj b3JhdGUgfQ0KYGBgDQoNCk9yLCBldmVuIHNob3J0ZXIgZm9yIFJhaWxzIHVzZXJzOg0KYGBgcnVi eQ0KQHJlY29yZCA9IFJlY29yZC5maW5kKHJlY29yZF9pZCkNCiAgLm9wdGlvbmFsIHsgaXQudHJ5 IDpkZWNvcmF0ZSB9DQpgYGANCg0KIyMgV2h5DQoNClRoZSBpbnRlbnQgaXMgdG8gKiptYWtlIGl0 IHZpc2libGUgYXQgYSBnbGFuY2UgdGhhdCBhIHN0YXRlbWVudCBfbWF5XyBhZmZlY3QgdGhlIHJl c3VsdCoqLCBidXQgbm90IG5lY2Vzc2FyaWx5IGRvZXMgc28uIFdpdGhvdXQgdGhlIHByb3Bvc2Vk IG1ldGhvZCwgb25lIG5lZWRzIHRvIHJlYWQgYW5kIHBhcnNlIHRoZSB3aG9sZSBibG9jayB0byBr bm93IHRoYXQuDQoNCkl0IHNob3VsZCBoZWxwIHRvIHJlYWQgbG9uZ2VyIHByb2Nlc3NpbmcgY2hh aW5zLCBmb3IgdGhvc2Ugd2hvIHByZWZlciBjaGFpbnMgYW5kIGAjdGhlbmAgdG8gcGxhaW4gb2xk IGl0ZXJhdGl2ZSBhcHByb2FjaC4NCg0KIyMgTmFtaW5nDQoNCkl0IGlzIGRpc2N1c3NpYmxlLiBJ IGhhdmUganVzdCB0d28gaWRlYXMgeWV0Og0KLSBgb3B0aW9uYWxgDQotIGBtYXliZWANCg0KIyMg UmVmZXJlbmNlIGltcGxlbWVudGF0aW9uDQoNCmBgYHJ1YnkNCiMgWWllbGRzIHNlbGYgdG8gdGhl IGJsb2NrIGFuZCByZXR1cm5zIHRoZSByZXN1bHQgb2YgdGhlIGJsb2NrIGlmIGl04oCZcw0KIyB0 cnV0aHksIGFuZCBzZWxmIG90aGVyd2lzZS4NCmRlZiBvcHRpb25hbA0KICB0YXAgZG8NCiAgICBy ZXN1bHQgPSB5aWVsZChzZWxmKSBvciBuZXh0DQoNCiAgICBicmVhayByZXN1bHQNCiAgZW5kDQpl bmQNCmBgYA0KDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8NCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KIHJ1YnktY29yZSBtYWlsaW5n IGxpc3QgLS0gcnVieS1jb3JlQG1sLnJ1YnktbGFuZy5vcmcKIFRvIHVuc3Vic2NyaWJlIHNlbmQg YW4gZW1haWwgdG8gcnVieS1jb3JlLWxlYXZlQG1sLnJ1YnktbGFuZy5vcmcKIHJ1YnktY29yZSBp bmZvIC0tIGh0dHBzOi8vbWwucnVieS1sYW5nLm9yZy9tYWlsbWFuMy9saXN0cy9ydWJ5LWNvcmUu bWwucnVieS1sYW5nLm9yZy8K