[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110471] [Ruby master Feature#19000] Data: Add "Copy with changes method" [Follow-on to #16122 Data: simple immutable value object]
From:
"ufuk (Ufuk Kayserilioglu)" <noreply@...>
Date:
2022-10-21 21:35:27 UTC
List:
ruby-core #110471
SXNzdWUgIzE5MDAwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgdWZ1ayAoVWZ1ayBLYXlzZXJpbGlvZ2x1 KS4NCg0KDQpTaW5jZSBSdWJ5IGFscmVhZHkgaGFzIHRoZSBbYE9iamVjdCNkdXBgIG1ldGhvZF0o aHR0cHM6Ly9ydWJ5LWRvYy5vcmcvY29yZS0zLjEuMC9PYmplY3QuaHRtbCNkdXAtbWV0aG9kKSwg SSB0aGluayB3ZSBkb24ndCBuZWVkIHRvIGNyZWF0ZSBhIG5ldyBtZXRob2QgdG8gZHVwbGljYXRl IGEgYERhdGFgIGluc3RhbmNlIHdpdGggcG90ZW50aWFsbHkgc2xpZ2h0bHkgZGlmZmVyZW50IHZh bHVlcy4NCg0KSSB0aGluayBhbGxvd2luZyB0aGUgYGR1cGAgbWV0aG9kIG9uIGBEYXRhYCBpbnN0 YW5jZXMgdG8gdGFrZSBvcHRpb25hbCBrZXl3b3JkIGFyZ3VtZW50cyB3b3VsZCBiZSB0aGUgaWRl YWwgQVBJIGZvciB0aGlzOg0KYGBgcnVieQ0KUG9pbnQgPSBEYXRhLmRlZmluZSg6eCwgOnksIDp6 KQ0KT3JpZ2luID0gUG9pbnQubmV3KHg6IDAuMCwgeTogMC4wLCB6OiAwLjApDQoNCnJpZ2h0ID0g T3JpZ2luLmR1cCh4OiAxLjApDQp1cCA9IE9yaWdpbi5kdXAoeTogMS4wKQ0KdXBfYW5kX3JpZ2h0 ID0gcmlnaHQud2l0aCh5OiB1cC55KQ0KYGBgDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NCkZlYXR1cmUgIzE5MDAwOiBEYXRhOiBBZGQgIkNvcHkgd2l0aCBjaGFu Z2VzIG1ldGhvZCIgW0ZvbGxvdy1vbiB0byAjMTYxMjIgRGF0YTogc2ltcGxlIGltbXV0YWJsZSB2 YWx1ZSBvYmplY3RdDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTkwMDAjY2hh bmdlLTk5NzkwDQoNCiogQXV0aG9yOiBSdWJ5QnVncyAoQSBOb255bW91cykNCiogU3RhdHVzOiBP cGVuDQoqIFByaW9yaXR5OiBOb3JtYWwNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0NCipBcyByZXF1ZXN0ZWQ6IGV4dHJhY3RlZCBhIGZvbGxvdy11cCB0byAjMTYxMjIg RGF0YTogc2ltcGxlIGltbXV0YWJsZSB2YWx1ZSBvYmplY3QgZnJvbSBbdGhpcyBjb21tZW50XSho dHRwOi8vYmxhZGUubmFnYW9rYXV0LmFjLmpwL2NnaS1iaW4vc2NhdC5yYi9ydWJ5L3J1YnktY29y ZS8xMDk4MTUpKg0KDQoNCiMgUHJvcG9zYWw6IEFkZCBhICJDb3B5IHdpdGggY2hhbmdlcyIgbWV0 aG9kIHRvIERhdGENCg0KQXNzdW1lIHRoZSBwcm9wb3NlZCBgRGF0YS5kZWZpbmVgIGV4aXN0cy4N ClNlZWluZyBleGFtcGxlcyBmcm9tIHRoZSBbW1ZhbHVlcyBnZW1dXShodHRwczovL2dpdGh1Yi5j b20vbXMtYXRpL1ZhbHVlcyk6DQoNCmBgYHJ1YnkNCiMgQSBuZXcgY2xhc3MNClBvaW50ID0gRGF0 YS5kZWYoOngsIDp5KQ0KDQojIEFuIGltbXV0YWJsZSBpbnN0YW5jZQ0KT3JpZ2luID0gUG9pbnQu d2l0aCh4OiAwLCB5OiAwKQ0KDQojIFE6IEhvdyBkbyB3ZSBtYWtlIGNvcGllcyB0aGF0IGNoYW5n ZSAxIG9yIG1vcmUgdmFsdWVzPw0KcmlnaHQgPSBPcmlnaW4ud2l0aCh4OiAxLjApDQp1cCA9IE9y aWdpbi53aXRoKHk6IDEuMCkNCnVwX2FuZF9yaWdodCA9IHJpZ2h0LndpdGgoeTogdXAueSkNCg0K IyBJbiBsb29wcw0KbW92ZW1lbnRzID0gWw0KICB7IHg6ICswLjUgfSwNCiAgeyB4OiArMC41IH0s DQogIHsgeTogLTEuMCB9LA0KICB7IHg6ICswLjUgfSwNCl0NCg0KIyBwb3NpdGlvbiA9IFBvaW50 KHg6IDEuNSwgeTogLTEuMCkNCnBvc2l0aW9uID0gbW92ZW1lbnRzLmluamVjdChPcmlnaW4pIHsg fHAsIG1vdmV8IHAud2l0aCgqKm1vdmUpIH0NCmBgYA0KDQojIyBQcm9wb3NlZCBkZXRhaWw6IENh bGwgdGhpcyBtZXRob2Q6IGAjd2l0aGANCg0KYGBgcnVieQ0KTW9uZXkgPSBEYXRhLmRlZmluZSg6 YW1vdW50LCA6Y3VycmVuY3kpDQoNCmFjY291bnQgPSBNb25leS5uZXcoYW1vdW50OiAxMDAsIGN1 cnJlbmN5OiAnVVNEJykNCg0KdHJhbnNhY3Rpb25zID0gWysxMCwgLTUsICsxNV0NCg0KYWNjb3Vu dCA9IHRyYW5zYWN0aW9ucy5pbmplY3QoYWNjb3VudCkgeyB8YSwgdHwgYS53aXRoKGFtb3VudDog YS5hbW91bnQgKyB0KSB9DQojPT4gTW9uZXkoYW1vdW50OiAxMjAsIGN1cnJlbmN5OiAiVVNEIikN CmBgYA0KDQojIyBXaHkgYWRkIHRoaXMgIkNvcHkgd2l0aCBjaGFuZ2VzIiBtZXRob2QgdG8gdGhl IERhdGEgc2ltcGxlIGltbXV0YWJsZSB2YWx1ZSBjbGFzcz8NCg0KQ2FsbGVkIG9uIGFuIGluc3Rh bmNlLCBpdCByZXR1cm5zIGEgbmV3IGluc3RhbmNlIHdpdGggb25seSB0aGUgcHJvdmlkZWQgcGFy YW1ldGVycyBjaGFuZ2VkLg0KDQpUaGlzIEFQSSBhZmZvcmRhbmNlIGlzIG5vdyAqKndpZGVseSBh ZG9wdGVkIGFjcm9zcyBtYW55IGxhbmd1YWdlcyoqIGZvciBpdHMgdXNlZnVsbmVzcy4gV2h5IGlz IGl0IHNvIHVzZWZ1bD8gQmVjYXVzZSBjb3B5aW5nIGltbXV0YWJsZSB2YWx1ZSBvYmplY3QgaW5z dGFuY2VzLCB3aXRoIDEgb3IgbW9yZSBkaXNjcmV0ZSBjaGFuZ2VzIHRvIHNwZWNpZmljIGZpZWxk cywgaXMgdGhlIHByb3BlciBhbmQgdWJpcXVpdG91cyBwYXR0ZXJuIHRoYXQgdGFrZXMgdGhlIHBs YWNlIG9mIG11dGF0aW9uIHdoZW4gd29ya2luZyB3aXRoIGltbXV0YWJsZSB2YWx1ZSBvYmplY3Rz Lg0KDQoqKk90aGVyIGxhbmd1YWdlcyoqDQoNCkMjIFJlY29yZHM6IOKAnGltbXV0YWJsZSByZWNv cmQgc3RydWN0cyDigJQgTm9uLWRlc3RydWN0aXZlIG11dGF0aW9u4oCdIOKAlCBpcyBjYWxsZWQg YHdpdGggeyAuLi4gfWANCmh0dHBzOi8vZG9jcy5taWNyb3NvZnQuY29tL2VuLXVzL2RvdG5ldC9j c2hhcnAvbGFuZ3VhZ2UtcmVmZXJlbmNlL2J1aWx0aW4tdHlwZXMvcmVjb3JkI25vbmRlc3RydWN0 aXZlLW11dGF0aW9uDQoNClNjYWxhIENhc2UgQ2xhc3NlcyDigJQgaXMgY2FsbGVkIGAjY29weWAN Cmh0dHBzOi8vZG9jcy5zY2FsYS1sYW5nLm9yZy90b3VyL2Nhc2UtY2xhc3Nlcy5odG1sDQoNCkph dmEgMTQrIFJlY29yZHMg4oCUIEJyaWFuIEdvZXR6IGF0IE9yYWNsZSBpcyB3b3JraW5nIG9uIGFk ZGluZyBhIHdpdGggY29weSBjb25zdHJ1Y3RvciBpbnNwaXJlZCBieSBDIyBhYm92ZSBhcyB3ZSBz cGVhaywgbGlrZWx5IHRvIGJlIGNhbGxlZCBgI3dpdGhgDQpodHRwczovL21haWwub3Blbmpkay5v cmcvcGlwZXJtYWlsL2FtYmVyLXNwZWMtZXhwZXJ0cy8yMDIyLUp1bmUvMDAzNDYxLmh0bWwNCg0K UnVzdCDigJxTdHJ1Y3QgVXBkYXRlIFN5bnRheOKAnSB2aWEgYC4uYCBzeW50YXggaW4gY29uc3Ry dWN0b3INCmh0dHBzOi8vZG9jLnJ1c3QtbGFuZy5vcmcvYm9vay9jaDA1LTAxLWRlZmluaW5nLXN0 cnVjdHMuaHRtbCNjcmVhdGluZy1pbnN0YW5jZXMtZnJvbS1vdGhlci1pbnN0YW5jZXMtd2l0aC1z dHJ1Y3QtdXBkYXRlLXN5bnRheA0KDQojIyBBbHRlcm5hdGl2ZXMNCg0KV2l0aG91dCBhIGNvcHkt d2l0aC1jaGFuZ2VzIG1ldGhvZCwgb25lIG11c3QgY29uc3RydWN0IGVudGlyZWx5IG5ldyBpbnN0 YW5jZXMgdXNpbmcgdGhlIGNvbnN0cnVjdG9yLiBUaGlzIGNhbiBlaXRoZXIgYmUgKGEpIGZ1bGx5 IHNwZWxsZWQgb3V0IGFzIGJvaWxlcnBsYXRlIGNvZGUsIG9yIChiKSB1c2UgYSBzeW1tZXRyaWNh bCBgI3RvX2hgIHRvIGZlZWQgdGhlIGtleXdvcmQtYXJncyBjb25zdHJ1Y3Rvci4NCg0KKiooYSkg Qm9pbGVycGxhdGUgdXNpbmcgY29uc3RydWN0b3IqKg0KDQpgYGBydWJ5DQpQb2ludCA9IERhdGEu ZGVmaW5lKDp4LCA6eSwgOnopDQpPcmlnaW4gPSBQb2ludC5uZXcoeDogMC4wLCB5OiAwLjAsIHo6 IDAuMCkNCg0KY2hhbmdlID0geyB6OiAtMS41IH0NCg0KIyBIYXZlIHRvIHVzZSBmdWxsIGNvbnN0 cnVjdG9yIC0tIGRvZXMgdGhpcyBldmVuIHdvcms/DQpwb2ludCA9IFBvaW50Lm5ldyh4OiBPcmln aW4ueCwgeTogT3JpZ2luLnksICoqY2hhbmdlKQ0KYGBgDQoNCioqKGIpIFVzaW5nIGEgc2VwYXJh dGVseSBwcm9wb3NlZCBgI3RvX2hgIG1ldGhvZCBhbmQgY29uc3RydWN0b3Igc3ltbWV0cnkqDQoN CmBgYHJ1YnkNClBvaW50ID0gRGF0YS5kZWZpbmUoOngsIDp5LCA6eikNCk9yaWdpbiA9IFBvaW50 Lm5ldyh4OiAwLjAsIHk6IDAuMCwgejogMC4wKQ0KDQpjaGFuZ2UgPSB7IHo6IC0xLjUgfQ0KDQoj IEhhdmUgdG8gdXNlIGZ1bGwgY29uc3RydWN0b3IgLS0gZG9lcyB0aGlzIGV2ZW4gd29yaz8NCnBv aW50ID0gUG9pbnQubmV3KCoqKE9yaWdpbi50b19oLm1lcmdlKGNoYW5nZSkpKQ0KYGBgDQoNCk5v dGljZSB0aGF0IHRoZSBhYm92ZSBhcmUgbm90IGVyZ29ub21pYyAtLSBsZWFkaW5nIHNvIG1hbnkg b2Ygb3VyIHBlZXIgbGFuZ3VhZ2UgY29tbXVuaXRpZXMgdG8gYWRvcHQgdGhlIGAjd2l0aGAgbWV0 aG9kIHRvIGNvcHkgYW4gaW5zdGFuY2Ugd2l0aCBkaXNjcmV0ZSBjaGFuZ2VzLg0KDQoNCg0KLS0g DQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8NCgpVbnN1YnNjcmliZTogPG1haWx0bzpydWJ5 LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3JpYmU+CjxodHRwOi8v bGlzdHMucnVieS1sYW5nLm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9ydWJ5LWNvcmU+Cg==