[ruby-core:119904] [Ruby master Feature#20770] A *new* pipe operator proposal
From:
"AlexandreMagro (Alexandre Magro) via ruby-core" <ruby-core@...>
Date:
2024-11-12 19:02:34 UTC
List:
ruby-core #119904
SXNzdWUgIzIwNzcwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgQWxleGFuZHJlTWFncm8gKEFsZXhhbmRy ZSBNYWdybykuDQoNCg0KbHBvZ2ljICjFgXVrYXN6IFBvbWlldMWCbykgd3JvdGUgaW4gI25vdGUt NDY6DQo+IEkgd29uZGVyIGlmIHRoZSBwaXBlbGluZSBvcGVyYXRvciB3aXRoIGFzc2lnbm1lbnQg d291bGRuJ3QgYWxzbyBiZSB1c2VmdWwgaW4gZXZlcnlkYXkgY29kZToNCj4gDQo+IGBgYCBydWJ5 DQo+IHN0ciA9ICJBQkMiDQo+IHN0ciB8Pj0gXy5yZXZlcnNlDQo+IHN0ciAjID0+ICJDQkEiDQo+ IA0KPiBhX3NpbXBsZV9qc29uID0gJ3sia2V5IjoidmFsdWUifScNCj4gYV9zaW1wbGVfanNvbiB8 Pj0gSlNPTi5wYXJzZSBfDQo+IGFfc2ltcGxlX2pzb24gIyA9PiB7ImtleSI9PiJ2YWx1ZSJ9DQo+ IA0KPiBhID0gW3tncmVldGluZzogIkhlbGxvIn1dDQo+IGFbMF1bOmdyZWV0aW5nXSB8Pj0gIiN7 X30gV29ybGQhIg0KPiBhICMgPT4gW3tncmVldGluZzogIkhlbGxvIFdvcmxkISJ9XQ0KPiBgYGAN Cg0KVGhlIHBpcGUgb3BlcmF0b3IgaXMgd2VsbC1rbm93biwgYnV0IHRoaXMgdHlwZSBvZiBvcGVy YXRpb24gd2l0aCBhc3NpZ25tZW50IGlzIHNvbWV0aGluZyBJIGhhdmVu4oCZdCBzZWVuIGJlZm9y ZSwgYW5kIEnigJltIG5vdCBzdXJlIG9mIGl0cyBwcmVjZWRlbmNlLiBUaGUgZXhhbXBsZXMgYWxz byBkb27igJl0IGlsbHVzdHJhdGUgYSBzdHJvbmcgbmVlZCBmb3IgaXQuDQoNCmBgYHJ1YnkNCiMg MQ0KDQpzdHIgPSAiQUJDIi5yZXZlcnNlDQoNCiMgMg0KDQphX3NpbXBsZV9qc29uID0gSlNPTi5w YXJzZSAneyJrZXkiOiJ2YWx1ZSJ9Jw0KYGBgDQoNCkluIHRoZSB0aGlyZCBleGFtcGxlLCBhIGRl ZGljYXRlZCBtZXRob2Qgd291bGQgYmUgbW9yZSBzdWl0YWJsZSwgSSBiZWxpZXZlIGEgc2ltaWxh ciBwcm9wb3NhbCB3YXMgbWFkZSBoZXJlOiBodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1 ZXMvMjA4MTgNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRmVh dHVyZSAjMjA3NzA6IEEgKm5ldyogcGlwZSBvcGVyYXRvciBwcm9wb3NhbA0KaHR0cHM6Ly9idWdz LnJ1YnktbGFuZy5vcmcvaXNzdWVzLzIwNzcwI2NoYW5nZS0xMTA2MDkNCg0KKiBBdXRob3I6IEFs ZXhhbmRyZU1hZ3JvIChBbGV4YW5kcmUgTWFncm8pDQoqIFN0YXR1czogT3Blbg0KLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KSGVsbG8sDQoNClRoaXMgaXMgbXkgZmly c3QgY29udHJpYnV0aW9uIGhlcmUuIEkgaGF2ZSBzZWVuIHByZXZpb3VzIGRpc2N1c3Npb25zIGFy b3VuZCBpbnRyb2R1Y2luZyBhIHBpcGUgb3BlcmF0b3IsIGJ1dCBpdCBzZWVtcyB0aGUgY29tbXVu aXR5IGRpZG4ndCByZWFjaCBhIGNvbnNlbnN1cy4gSSB3b3VsZCBsaWtlIHRvIHJldmlzaXQgdGhp cyBpZGVhIHdpdGggYSBzaW1wbGVyIGFwcHJvYWNoLCBtb3JlIG9mIGEgc3ludGFjdGljIHN1Z2Fy IHRoYXQgYWxpZ25zIHdpdGggaG93IG90aGVyIGxhbmd1YWdlcyBpbXBsZW1lbnQgdGhlIHBpcGUg b3BlcmF0b3IsIGJ1dCB3aXRob3V0IG1ha2luZyBzaWduaWZpY2FudCBjaGFuZ2VzIHRvIFJ1Ynkn cyBzeW50YXguDQoNCkN1cnJlbnRseSwgd2Ugb2Z0ZW4gd3JpdGUgY29kZSBsaWtlIHRoaXM6DQoN CmBgYHJ1YnkNCnZhbHVlID0gaGFsZihzcXVhcmUoYWRkKHZhbHVlLCAzKSkpDQpgYGANCg0KV2Ug Y2FuIGFjaGlldmUgdGhlIHNhbWUgcmVzdWx0IHVzaW5nIHRoZSBgdGhlbmAgbWV0aG9kOg0KDQpg YGBydWJ5DQp2YWx1ZSA9IHZhbHVlLnRoZW4geyBhZGQoXzEsIDMpIH0udGhlbiB7IHNxdWFyZShf MSkgfS50aGVuIHsgaGFsZihfMSkgfQ0KYGBgDQoNCldoaWxlIGB0aGVuYCBoZWxwcyB3aXRoIHJl YWRhYmlsaXR5LCB3ZSBjYW4gc2ltcGxpZnkgaXQgZnVydGhlciB1c2luZyB0aGUgcHJvcG9zZWQg cGlwZSBvcGVyYXRvcjoNCg0KYGBgcnVieQ0KdmFsdWUgPSBhZGQodmFsdWUsIDMpIHw+IHNxdWFy ZShfMSkgfD4gaGFsZihfMSkNCmBgYA0KDQpNb3Jlb3Zlciwgd2l0aCB0aGUgdXBjb21pbmcgYGl0 YCBmZWF0dXJlIGluIFJ1YnkgMy40ICgjMTg5ODApLCB0aGUgY29kZSBjb3VsZCBsb29rIGV2ZW4g Y2xlYW5lcjoNCg0KYGBgcnVieQ0KdmFsdWUgPSBhZGQodmFsdWUsIDMpIHw+IHNxdWFyZShpdCkg fD4gaGFsZihpdCkNCmBgYA0KDQpUaGlzIHByb3Bvc2FsIHVzZXMgdGhlIGFub255bW91cyBibG9j ayBhcmd1bWVudCBgKF8xKWAsIGFuZCB3aXRoIGBpdGAsIGl0IHNpbXBsaWZpZXMgdGhlIGNvZGUg d2l0aG91dCBpbnRyb2R1Y2luZyBjb21wbGV4IHN5bnRheCBjaGFuZ2VzLiBJdCB3b3VsZCBhbGxv dyB1cyB0byBhY2hpZXZlIHRoZSBzYW1lIHJlc3VsdHMgYXMgaW4gb3RoZXIgbGFuZ3VhZ2VzIHRo YXQgc3VwcG9ydCBwaXBlIG9wZXJhdG9ycywgYnV0IGluIGEgd2F5IHRoYXQgZmVlbHMgbmF0dXJh bCB0byBSdWJ5LCB1c2luZyBleGlzdGluZyBjb25zdHJ1Y3RzIGxpa2UgYHRoZW5gIHVuZGVybmVh dGguDQoNCkkgYmVsaWV2ZSB0aGlzIG9wZXJhdG9yIHdvdWxkIGVuaGFuY2UgY29kZSByZWFkYWJp bGl0eSBhbmQgbWFpbnRhaW5hYmlsaXR5LCBlc3BlY2lhbGx5IGluIGNhc2VzIHdoZXJlIG11bHRp cGxlIG9wZXJhdGlvbnMgYXJlIGNoYWluZWQgdG9nZXRoZXIuDQoNClRoYW5rIHlvdSBmb3IgY29u c2lkZXJpbmcgdGhpcyBwcm9wb3NhbCENCg0KDQoNCg0KDQoNCi0tIA0KaHR0cHM6Ly9idWdzLnJ1 YnktbGFuZy5vcmcvDQogX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwogcnVieS1jb3JlIG1haWxpbmcgbGlzdCAtLSBydWJ5LWNvcmVAbWwucnVieS1sYW5nLm9y ZwogVG8gdW5zdWJzY3JpYmUgc2VuZCBhbiBlbWFpbCB0byBydWJ5LWNvcmUtbGVhdmVAbWwucnVi eS1sYW5nLm9yZwogcnVieS1jb3JlIGluZm8gLS0gaHR0cHM6Ly9tbC5ydWJ5LWxhbmcub3JnL21h aWxtYW4zL2xpc3RzL3J1YnktY29yZS5tbC5ydWJ5LWxhbmcub3JnLw==