[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110517] [Ruby master Feature#19000] Data: Add "Copy with changes method" [Follow-on to #16122 Data: simple immutable value object]
From:
"RubyBugs (A Nonymous)" <noreply@...>
Date:
2022-10-26 18:16:02 UTC
List:
ruby-core #110517
SXNzdWUgIzE5MDAwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgUnVieUJ1Z3MgKEEgTm9ueW1vdXMpLg0K DQoNCj4gaXQgc2hvdWxkIGJlIGFuIGVycm9yIHRvIHN1cHBseSBhIGtleXdvcmQgYXJndW1lbnQg dGhhdCB0aGUgRGF0YSBjbGFzcyBkb2VzIG5vdCBoYXZlIGFzIG1lbWJlcnMNCg0KKzEgQWdyZWUh DQoNCioqUGxlYXNlIG5vdGUsIHBlcmZvcm1hbmNlIHdvcmsgc2hvdWxkIGJlIHBsYW5uZWQqKiB0 byBlbnN1cmUgdGhhdCBzdWNoIGNoZWNraW5nIG9mIHRoZSBrZXl3b3JkIGFyZ3MgaXMgYXMgZmFz dCBhcyBwb3NzaWJsZSBhbmQgYXZvaWRzIHVubmVjZXNzYXJ5IGFsbG9jYXRpb25zLg0KDQpGb3Ig ZXhhbXBsZSwgaGVyZSdzIGEgKipyZWFsIGxpZmUqKiBwdWxsIHJlcXVlc3Qgd2hpY2ggc3BlZCB1 cCB0aGlzIGVycm9yIGNoZWNraW5nIHRoZSBWYWx1ZXMgZ2VtIGAjd2l0aGAgbWV0aG9kIGJ5IDIu Mjl4Og0KaHR0cHM6Ly9naXRodWIuY29tL21zLWF0aS9WYWx1ZXMvY29tbWl0L2MzZjAwZTNlOGQ2 N2ZmNWQ2NDcwMzE1YWQxMzcxNjYxNzdmMDc5ZTINCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0KRmVhdHVyZSAjMTkwMDA6IERhdGE6IEFkZCAiQ29weSB3aXRoIGNo YW5nZXMgbWV0aG9kIiBbRm9sbG93LW9uIHRvICMxNjEyMiBEYXRhOiBzaW1wbGUgaW1tdXRhYmxl IHZhbHVlIG9iamVjdF0NCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xOTAwMCNj aGFuZ2UtOTk4NDENCg0KKiBBdXRob3I6IFJ1YnlCdWdzIChBIE5vbnltb3VzKQ0KKiBTdGF0dXM6 IE9wZW4NCiogUHJpb3JpdHk6IE5vcm1hbA0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQ0KKkFzIHJlcXVlc3RlZDogZXh0cmFjdGVkIGEgZm9sbG93LXVwIHRvICMxNjEy MiBEYXRhOiBzaW1wbGUgaW1tdXRhYmxlIHZhbHVlIG9iamVjdCBmcm9tIFt0aGlzIGNvbW1lbnRd KGh0dHA6Ly9ibGFkZS5uYWdhb2thdXQuYWMuanAvY2dpLWJpbi9zY2F0LnJiL3J1YnkvcnVieS1j b3JlLzEwOTgxNSkqDQoNCg0KIyBQcm9wb3NhbDogQWRkIGEgIkNvcHkgd2l0aCBjaGFuZ2VzIiBt ZXRob2QgdG8gRGF0YQ0KDQpBc3N1bWUgdGhlIHByb3Bvc2VkIGBEYXRhLmRlZmluZWAgZXhpc3Rz Lg0KU2VlaW5nIGV4YW1wbGVzIGZyb20gdGhlIFtbVmFsdWVzIGdlbV1dKGh0dHBzOi8vZ2l0aHVi LmNvbS9tcy1hdGkvVmFsdWVzKToNCg0KYGBgcnVieQ0KIyBBIG5ldyBjbGFzcw0KUG9pbnQgPSBE YXRhLmRlZig6eCwgOnkpDQoNCiMgQW4gaW1tdXRhYmxlIGluc3RhbmNlDQpPcmlnaW4gPSBQb2lu dC53aXRoKHg6IDAsIHk6IDApDQoNCiMgUTogSG93IGRvIHdlIG1ha2UgY29waWVzIHRoYXQgY2hh bmdlIDEgb3IgbW9yZSB2YWx1ZXM/DQpyaWdodCA9IE9yaWdpbi53aXRoKHg6IDEuMCkNCnVwID0g T3JpZ2luLndpdGgoeTogMS4wKQ0KdXBfYW5kX3JpZ2h0ID0gcmlnaHQud2l0aCh5OiB1cC55KQ0K DQojIEluIGxvb3BzDQptb3ZlbWVudHMgPSBbDQogIHsgeDogKzAuNSB9LA0KICB7IHg6ICswLjUg fSwNCiAgeyB5OiAtMS4wIH0sDQogIHsgeDogKzAuNSB9LA0KXQ0KDQojIHBvc2l0aW9uID0gUG9p bnQoeDogMS41LCB5OiAtMS4wKQ0KcG9zaXRpb24gPSBtb3ZlbWVudHMuaW5qZWN0KE9yaWdpbikg eyB8cCwgbW92ZXwgcC53aXRoKCoqbW92ZSkgfQ0KYGBgDQoNCiMjIFByb3Bvc2VkIGRldGFpbDog Q2FsbCB0aGlzIG1ldGhvZDogYCN3aXRoYA0KDQpgYGBydWJ5DQpNb25leSA9IERhdGEuZGVmaW5l KDphbW91bnQsIDpjdXJyZW5jeSkNCg0KYWNjb3VudCA9IE1vbmV5Lm5ldyhhbW91bnQ6IDEwMCwg Y3VycmVuY3k6ICdVU0QnKQ0KDQp0cmFuc2FjdGlvbnMgPSBbKzEwLCAtNSwgKzE1XQ0KDQphY2Nv dW50ID0gdHJhbnNhY3Rpb25zLmluamVjdChhY2NvdW50KSB7IHxhLCB0fCBhLndpdGgoYW1vdW50 OiBhLmFtb3VudCArIHQpIH0NCiM9PiBNb25leShhbW91bnQ6IDEyMCwgY3VycmVuY3k6ICJVU0Qi KQ0KYGBgDQoNCiMjIFdoeSBhZGQgdGhpcyAiQ29weSB3aXRoIGNoYW5nZXMiIG1ldGhvZCB0byB0 aGUgRGF0YSBzaW1wbGUgaW1tdXRhYmxlIHZhbHVlIGNsYXNzPw0KDQpDYWxsZWQgb24gYW4gaW5z dGFuY2UsIGl0IHJldHVybnMgYSBuZXcgaW5zdGFuY2Ugd2l0aCBvbmx5IHRoZSBwcm92aWRlZCBw YXJhbWV0ZXJzIGNoYW5nZWQuDQoNClRoaXMgQVBJIGFmZm9yZGFuY2UgaXMgbm93ICoqd2lkZWx5 IGFkb3B0ZWQgYWNyb3NzIG1hbnkgbGFuZ3VhZ2VzKiogZm9yIGl0cyB1c2VmdWxuZXNzLiBXaHkg aXMgaXQgc28gdXNlZnVsPyBCZWNhdXNlIGNvcHlpbmcgaW1tdXRhYmxlIHZhbHVlIG9iamVjdCBp bnN0YW5jZXMsIHdpdGggMSBvciBtb3JlIGRpc2NyZXRlIGNoYW5nZXMgdG8gc3BlY2lmaWMgZmll bGRzLCBpcyB0aGUgcHJvcGVyIGFuZCB1YmlxdWl0b3VzIHBhdHRlcm4gdGhhdCB0YWtlcyB0aGUg cGxhY2Ugb2YgbXV0YXRpb24gd2hlbiB3b3JraW5nIHdpdGggaW1tdXRhYmxlIHZhbHVlIG9iamVj dHMuDQoNCioqT3RoZXIgbGFuZ3VhZ2VzKioNCg0KQyMgUmVjb3Jkczog4oCcaW1tdXRhYmxlIHJl Y29yZCBzdHJ1Y3RzIOKAlCBOb24tZGVzdHJ1Y3RpdmUgbXV0YXRpb27igJ0g4oCUIGlzIGNhbGxl ZCBgd2l0aCB7IC4uLiB9YA0KaHR0cHM6Ly9kb2NzLm1pY3Jvc29mdC5jb20vZW4tdXMvZG90bmV0 L2NzaGFycC9sYW5ndWFnZS1yZWZlcmVuY2UvYnVpbHRpbi10eXBlcy9yZWNvcmQjbm9uZGVzdHJ1 Y3RpdmUtbXV0YXRpb24NCg0KU2NhbGEgQ2FzZSBDbGFzc2VzIOKAlCBpcyBjYWxsZWQgYCNjb3B5 YA0KaHR0cHM6Ly9kb2NzLnNjYWxhLWxhbmcub3JnL3RvdXIvY2FzZS1jbGFzc2VzLmh0bWwNCg0K SmF2YSAxNCsgUmVjb3JkcyDigJQgQnJpYW4gR29ldHogYXQgT3JhY2xlIGlzIHdvcmtpbmcgb24g YWRkaW5nIGEgd2l0aCBjb3B5IGNvbnN0cnVjdG9yIGluc3BpcmVkIGJ5IEMjIGFib3ZlIGFzIHdl IHNwZWFrLCBsaWtlbHkgdG8gYmUgY2FsbGVkIGAjd2l0aGANCmh0dHBzOi8vbWFpbC5vcGVuamRr Lm9yZy9waXBlcm1haWwvYW1iZXItc3BlYy1leHBlcnRzLzIwMjItSnVuZS8wMDM0NjEuaHRtbA0K DQpSdXN0IOKAnFN0cnVjdCBVcGRhdGUgU3ludGF44oCdIHZpYSBgLi5gIHN5bnRheCBpbiBjb25z dHJ1Y3Rvcg0KaHR0cHM6Ly9kb2MucnVzdC1sYW5nLm9yZy9ib29rL2NoMDUtMDEtZGVmaW5pbmct c3RydWN0cy5odG1sI2NyZWF0aW5nLWluc3RhbmNlcy1mcm9tLW90aGVyLWluc3RhbmNlcy13aXRo LXN0cnVjdC11cGRhdGUtc3ludGF4DQoNCiMjIEFsdGVybmF0aXZlcw0KDQpXaXRob3V0IGEgY29w eS13aXRoLWNoYW5nZXMgbWV0aG9kLCBvbmUgbXVzdCBjb25zdHJ1Y3QgZW50aXJlbHkgbmV3IGlu c3RhbmNlcyB1c2luZyB0aGUgY29uc3RydWN0b3IuIFRoaXMgY2FuIGVpdGhlciBiZSAoYSkgZnVs bHkgc3BlbGxlZCBvdXQgYXMgYm9pbGVycGxhdGUgY29kZSwgb3IgKGIpIHVzZSBhIHN5bW1ldHJp Y2FsIGAjdG9faGAgdG8gZmVlZCB0aGUga2V5d29yZC1hcmdzIGNvbnN0cnVjdG9yLg0KDQoqKihh KSBCb2lsZXJwbGF0ZSB1c2luZyBjb25zdHJ1Y3RvcioqDQoNCmBgYHJ1YnkNClBvaW50ID0gRGF0 YS5kZWZpbmUoOngsIDp5LCA6eikNCk9yaWdpbiA9IFBvaW50Lm5ldyh4OiAwLjAsIHk6IDAuMCwg ejogMC4wKQ0KDQpjaGFuZ2UgPSB7IHo6IC0xLjUgfQ0KDQojIEhhdmUgdG8gdXNlIGZ1bGwgY29u c3RydWN0b3IgLS0gZG9lcyB0aGlzIGV2ZW4gd29yaz8NCnBvaW50ID0gUG9pbnQubmV3KHg6IE9y aWdpbi54LCB5OiBPcmlnaW4ueSwgKipjaGFuZ2UpDQpgYGANCg0KKiooYikgVXNpbmcgYSBzZXBh cmF0ZWx5IHByb3Bvc2VkIGAjdG9faGAgbWV0aG9kIGFuZCBjb25zdHJ1Y3RvciBzeW1tZXRyeSoN Cg0KYGBgcnVieQ0KUG9pbnQgPSBEYXRhLmRlZmluZSg6eCwgOnksIDp6KQ0KT3JpZ2luID0gUG9p bnQubmV3KHg6IDAuMCwgeTogMC4wLCB6OiAwLjApDQoNCmNoYW5nZSA9IHsgejogLTEuNSB9DQoN CiMgSGF2ZSB0byB1c2UgZnVsbCBjb25zdHJ1Y3RvciAtLSBkb2VzIHRoaXMgZXZlbiB3b3JrPw0K cG9pbnQgPSBQb2ludC5uZXcoKiooT3JpZ2luLnRvX2gubWVyZ2UoY2hhbmdlKSkpDQpgYGANCg0K Tm90aWNlIHRoYXQgdGhlIGFib3ZlIGFyZSBub3QgZXJnb25vbWljIC0tIGxlYWRpbmcgc28gbWFu eSBvZiBvdXIgcGVlciBsYW5ndWFnZSBjb21tdW5pdGllcyB0byBhZG9wdCB0aGUgYCN3aXRoYCBt ZXRob2QgdG8gY29weSBhbiBpbnN0YW5jZSB3aXRoIGRpc2NyZXRlIGNoYW5nZXMuDQoNCg0KDQot LSANCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLw0KClVuc3Vic2NyaWJlOiA8bWFpbHRvOnJ1 YnktY29yZS1yZXF1ZXN0QHJ1YnktbGFuZy5vcmc/c3ViamVjdD11bnN1YnNjcmliZT4KPGh0dHA6 Ly9saXN0cy5ydWJ5LWxhbmcub3JnL2NnaS1iaW4vbWFpbG1hbi9vcHRpb25zL3J1YnktY29yZT4K