[ruby-core:122511] [Ruby Feature#21435] Kernel#optional as a conditional #then
From:
"Alexander.Senko (Alexander Senko) via ruby-core" <ruby-core@...>
Date:
2025-06-10 20:33:34 UTC
List:
ruby-core #122511
SXNzdWUgIzIxNDM1IGhhcyBiZWVuIHVwZGF0ZWQgYnkgQWxleGFuZGVyLlNlbmtvIChBbGV4YW5k ZXIgU2Vua28pLg0KDQoNCm1hdGhldXNyaWNoIChNYXRoZXVzIFJpY2hhcmQpIHdyb3RlIGluICNu b3RlLTM6DQo+IEknbSBzb3JyeSwgSSBkb24ndCB1bmRlcnN0YW5kIHRoZSB1c2UgY2FzZSwgbm9y IGhvdyBpdCBEUlkgdGhpbmdzIHVwLg0KPiANCj4gVGhlIGdpdmVuIGV4YW1wbGUgc2hhdmVzIG9m ZiAxIGNoYXJhY3Rlci4gV2hhdCBpcyBvcHRpb25hbCBkb2luZz8gV2hhdCBpcyAib3B0aW9uYWwi IHJlZmVycmluZyB0bz8NCg0KVGhlIGlkZWEgaXMgYSkgdG8gKipyZWR1Y2UgY29nbml0aXZlIGNv bXBsZXhpdHkqKiBieSByZW1vdmluZyBvbmUgdHJpdmlhbCBicmFuY2ggb2YgYGlmYC9gZWxzZWAg c3RhdGVtZW50IG9yIGFuIHVnbHkgdGVybmFyeSBvcGVyYXRvciwgYW5kIGIpIHRvICoqaGlnaGxp Z2h0IGV4cGxpY2l0bHkgdGhhdCB0aGUgc3RhdGVtZW50IGlzIGNvbmRpdGlvbmFsKiogYW5kIG1h eSBsZWF2ZSB0aGUgcmVzdWx0IGludGFjdCBpbiBzb21lIGNhc2VzLg0KDQpUaGUgbWV0aG9kIG1h eSBpbXByb3ZlIHJlYWRhYmlsaXR5IG9mIGxvbmdlciBwcm9jZXNzaW5nIGNoYWlucyB3aGVuIHNv bWUgb2YgdGhlIG9wZXJhdGlvbnMgYXJlIGFwcGxpZWQgY29uZGl0aW9uYWxseS4gV2l0aG91dCBp dCwgd2UgaGF2ZSB0byByZXBlYXQgdGhhdCBzYW1lIGBlbHNlYCBicmFuY2ggZm9yIGV2ZXJ5IGNv bmRpdGlvbmFsIHByb2Nlc3NpbmcgaW4gYSBjaGFpbiAtLSB0aGF0IGxvb2tzIGEgYml0IGN1bWJl cnNvbWUgYW5kIG5vdCB2ZXJ5IERSWSBmb3IgbWUuDQoNCkknbSBub3QgYSBuYXRpdmUgc3BlYWtl ciwgc29ycnkuIElNTywgYG9wdGlvbmFsYCBpbmRpY2F0ZXMgdGhhdCBleGVjdXRpb24gaXMgbm90 IGd1YXJhbnRlZWQgYW5kIGRlcGVuZHMgb24gYSBjb25kaXRpb24uIE1heWJlIGl0IGNvdWxkIGJl IGNhbGxlZCBgbWF5YmVgIGluc3RlYWQuDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0NCkZlYXR1cmUgIzIxNDM1OiBLZXJuZWwjb3B0aW9uYWwgYXMgYSBjb25kaXRp b25hbCAjdGhlbg0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzIxNDM1I2NoYW5n ZS0xMTM3MzQNCg0KKiBBdXRob3I6IEFsZXhhbmRlci5TZW5rbyAoQWxleGFuZGVyIFNlbmtvKQ0K KiBTdGF0dXM6IE9wZW4NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0N CldoZW4gY2hhaW5pbmcsIEkgbmVlZCBzb21ldGltZXMgdG8gYXBwbHkgc29tZSBjaGFuZ2VzIGNv bmRpdGlvbmFsbHksIGxpa2UgdGhpczoNCmBgYHJ1YnkNCkByZWNvcmQgPSBSZWNvcmQuZmluZChy ZWNvcmRfaWQpDQogIC50aGVuIHsgaXQucmVzcG9uZF90bz8oOmRlY29yYXRlKSA/IGl0LmRlY29y YXRlIDogaXQgfQ0KYGBgDQoNCkl0IHdvdWxkIGJlIGdyZWF0IHRvIERSWSBpdCBhIGJpdDoNCmBg YHJ1YnkNCkByZWNvcmQgPSBSZWNvcmQuZmluZChyZWNvcmRfaWQpDQogIC5vcHRpb25hbCB7IGl0 LmRlY29yYXRlIGlmIGl0LnJlc3BvbmRfdG8/IDpkZWNvcmF0ZSB9DQpgYGANCg0KUmVmZXJlbmNl IGltcGxlbWVudGF0aW9uOg0KYGBgcnVieQ0KIyBZaWVsZHMgc2VsZiB0byB0aGUgYmxvY2sgYW5k IHJldHVybnMgdGhlIHJlc3VsdCBvZiB0aGUgYmxvY2sgaWYgaXTigJlzDQojIHRydXRoeSwgYW5k IHNlbGYgb3RoZXJ3aXNlLg0KZGVmIG9wdGlvbmFsDQogIHRhcCBkbw0KICAgIHJlc3VsdCA9IHlp ZWxkKHNlbGYpIG9yIG5leHQNCg0KICAgIGJyZWFrIHJlc3VsdA0KICBlbmQNCmVuZA0KYGBgDQoN ClRoZSBuYW1lIGlzIGRpc2N1c3NpYmxlLg0KDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVieS1s YW5nLm9yZy8NCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K IHJ1YnktY29yZSBtYWlsaW5nIGxpc3QgLS0gcnVieS1jb3JlQG1sLnJ1YnktbGFuZy5vcmcKIFRv IHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG8gcnVieS1jb3JlLWxlYXZlQG1sLnJ1YnktbGFu Zy5vcmcKIHJ1YnktY29yZSBpbmZvIC0tIGh0dHBzOi8vbWwucnVieS1sYW5nLm9yZy9tYWlsbWFu My9saXN0cy9ydWJ5LWNvcmUubWwucnVieS1sYW5nLm9yZy8K