[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110337] [Ruby master Feature#19063] Hash.new with non-value objects should be less confusing
From:
duerst <noreply@...>
Date:
2022-10-17 05:05:29 UTC
List:
ruby-core #110337
SXNzdWUgIzE5MDYzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgZHVlcnN0IChNYXJ0aW4gRMO8cnN0KS4N Cg0KDQpzYXdhIChUc3V5b3NoaSBTYXdhZGEpIHdyb3RlIGluICNub3RlLTk6DQoNCj4gMi4gWW91 ciBwcm9wb3NhbCAxIHdvdWxkIGJyZWFrIG9uZSBvZiB0aGUgdmVyeSBiYXNpYyBwcmluY2lwbGVz IG9mIFJ1YnksIG9yIHBlcmhhcHMgb2YgYW55IGNvbXB1dGVyIGxhbmd1YWdlLCBvciBldmVuIGFu eSBuYXR1cmFsIGxhbmd1YWdlLiBUaGF0IGlzLCB0aGUgYXJndW1lbnRzIHBhc3NlZCB0byBhIG1l dGhvZCBhcmUgZXZhbHVhdGVkIGJlZm9yZSAob3IgaW5kZXBlbmRlbnRseSBvZikgdGhlIGV4ZWN1 dGlvbiBvZiB0aGUgbWV0aG9kLiBJbiBvdGhlciB3b3JkcywgdGhlIHNlbWFudGljcyBvZiB0aGUg d2hvbGUgaXMgY2FsY3VsYXRlZCBmcm9tIHRoZSBzZW1hbnRpY3Mgb2YgaXRzIHBhcnRzLiBJbiB0 aGUgY29udGV4dCBvZiBuYXR1cmFsIGxhbmd1YWdlLCB0aGlzIHByaW5jaXBsZSBpcyBrbm93biBh cyBGcmVnZSdzIGNvbXBvc2l0aW9uYWxpdHkuIFdoYXQgaXMgcmVsZXZhbnQgaGVyZSBpcyB0aGF0 IHRoZSBkZWZhdWx0IG9iamVjdCB0aGF0IGlzIHBhc3NlZCBhcyBhbiBhcmd1bWVudCBtdXN0IGJl IGV2YWx1YXRlZCB0byAgYmUgc3VjaCBvYmplY3QgYmVmb3JlIGluaXRpYWxpemF0aW9uIG9mIHRo ZSBoYXNoLiBBIGJsb2NrIGRvZXMgbm90IGhhdmUgc3VjaCBsaW1pdGF0aW9uIGJlY2F1c2UgaXQg aXMgbm90IGEgZGVmYXVsdCBvYmplY3QgcGVyIHNlLCBidXQgaXMgc29tZXRoaW5nIHRoYXQgd291 bGQgYmUgZXZhbHVhdGVkIHRvIGJlIGEgZGVmYXVsdCBvYmplY3QuDQoNClRoZXJlIHdvdWxkIGRl ZmluaXRlbHkgYmUgcXVpdGUgYSBmZXcgZGV0YWlscyB0byBiZSB3b3JrZWQgb3V0LCBidXQgc3Rh cnRpbmcgd2l0aCBgSGFzaC5uZXcoW10pYCwgSSBkb24ndCBzZWUgYW55IHByb2JsZW0uIE9uZSBv ZiB0aGUgYmFzaWMgcHJpbmNpcGxlcyBvZiBtZXRob2QgYXJndW1lbnRzIGlzIHRoYXQgbWV0aG9k cyBjYW4gcmVzcG9uZCBkaWZmZXJlbnRseSB0byBkaWZmZXJlbnQgYXJndW1lbnRzLiBUaGF0J3Mg dGhlIHdob2xlIHBvaW50IG9mIGFyZ3VtZW50cy4gT2YgY291cnNlLCBgSGFzaC5uZXcobXlfbWV0 aG9kX3JldHVybmluZ19hbl9lbXB0eV9hcnJheSlgIHdvdWxkIGJlaGF2ZSBleGFjdGx5IHRoZSBz YW1lIGFzIGBIYXNoLm5ldyhbXSlgIChhc3N1bWluZyBgbXlfbWV0aG9kX3JldHVybmluZ19hbl9l bXB0eV9hcnJheWApIHJlYWxseSBkaWQgd2hhdCBpdHMgbmFtZSBzYWlkKS4gU28gY29tcG9zaXRp b25hbGl0eSB3b3VsZCBzdGlsbCBob2xkLg0KDQoNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0KRmVhdHVyZSAjMTkwNjM6IEhhc2gubmV3IHdpdGggbm9uLXZhbHVl IG9iamVjdHMgc2hvdWxkIGJlIGxlc3MgY29uZnVzaW5nDQpodHRwczovL2J1Z3MucnVieS1sYW5n Lm9yZy9pc3N1ZXMvMTkwNjMjY2hhbmdlLTk5NjI5DQoNCiogQXV0aG9yOiBiYXdlYXZlciAoQnJh bmRvbiBXZWF2ZXIpDQoqIFN0YXR1czogT3Blbg0KKiBQcmlvcml0eTogTm9ybWFsDQotLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpSZWxhdGVkIHRvICMxMDcxMyBhbmQg IzI3NjQuDQoNClJ1YnkncyBgSGFzaC5uZXdgIGFjY2VwdHMgZWl0aGVyIGEgYmxvY2sgb3IgYSBw YXJhbSBmb3IgaXRzIGRlZmF1bHQgdmFsdWUuIEluIHRoZSBjYXNlIG9mIG5vbi12YWx1ZSBvYmpl Y3RzIHRoaXMgbGVhZHMgdG8gdW5leHBlY3RlZCBiZWhhdmlvcnM6DQoNCmBgYHJ1YnkNCmJhZF9o YXNoX3dpdGhfYXJyYXlfdmFsdWVzID0gSGFzaC5uZXcoW10pDQpnb29kX2hhc2hfd2l0aF9hcnJh eV92YWx1ZXMgPSBIYXNoLm5ldyB7IHxoLCBrfCBoW2tdID0gW10gfQ0KYGBgDQoNCldoaWxlLCBh cyBAaHNidCBoYXMgc2FpZCBpbiB0aGUgcGFzdCwgdGhpcyBpcyBiZWhhdmluZyBhcyBpbnRlbmRl ZCBmb3IgdGhlIFJ1YnkgbGFuZ3VhZ2UgaXQgaGFzIGNhdXNlZCBhIGxvdCBvZiBjb25mdXNpb24g aW4gdGhlIGNvbW11bml0eSBvdmVyIHRoZSB5ZWFycyBhbmQgaXMgYSBrbm93biBzaGFycC1lZGdl Lg0KDQpNeSBhc3NlcnRpb24gaXMgdGhhdCB0aGlzIGlzIG5vdCB0aGUgaW50ZW5kZWQgYmVoYXZp b3IsIGFuZCBJIGNhbm5vdCBmaW5kIGEgbGVnaXRpbWF0ZSB1c2VjYXNlIGluIHdoaWNoIHNvbWVv bmUgaW50ZW5kcyBmb3IgdGhpcyB0byBoYXBwZW4uIE1vcmUgb2Z0ZW4gbmV3IHVzZXJzIHRvIFJ1 YnkgYXJlIGNvbmZ1c2VkIGJ5IHRoaXMgYmVoYXZpb3IgYW5kIHNwZW5kIGEgbG90IG9mIHRpbWUg ZGVidWdnaW5nLg0KDQpXZSBtdXN0IGNvbnNpZGVyIHRoZSBpbXBhY3QgdG8gUnVieSB1c2Vycywg ZGVzcGl0ZSB3aGF0IHRoZSBpbnRlbnQgb2YgdGhlIGxhbmd1YWdlIGlzLCBhbmQgbWFrZSB0aGUg bGFuZ3VhZ2UgbW9yZSBjbGVhciB3aGVyZSBwb3NzaWJsZS4NCg0KR2l2ZW4gdGhhdCwgSSBoYXZl IGEgZmV3IHBvdGVudGlhbCBwcm9wb3NhbHMgZm9yIFJ1YnkgY29tbWl0dGVycy4NCg0KIyMjIFBy b3Bvc2FsIDE6IERvIFdoYXQgVGhleSBNZWFudA0KDQpXaGVuIHBlb3BsZSB1c2UgYEhhc2gubmV3 KFtdKWAgdGhleSBtZWFuIGBIYXNoLm5ldyB7IHxoLCBrfCBoW2tdID0gW10gfWAuIENhbiB3ZSBt YWtlIHRoYXQgdGhlIGNhc2UgdGhhdCBpZiB5b3UgcGFzcyBhIG11dGFibGUgb3Igbm9uLXZhbHVl IG9iamVjdCB0aGF0IHRoZSBiZWhhdmlvciB3aWxsIGJlIGFzIGludGVuZGVkIHVzaW5nIGBkdXBg IG9yIG90aGVyIHRlY2huaXF1ZXM/DQoNCldoZW4gdXNlZCBpbiB0aGUgYWJvdmUgaW5jb3JyZWN0 IHdheSBpdCBpcyBsaWtlbHkgaWYgbm90IGFsd2F5cyBicm9rZW4gY29kZS4NCg0KIyMjIFByb3Bv c2FsIDI6IFdhcm4gQWJvdXQgVW5leHBlY3RlZCBCZWhhdmlvcg0KDQpBcyBtZW50aW9uZWQgYWJv dmUsIEkgZG8gbm90IGJlbGlldmUgdGhlcmUgYXJlIGxlZ2l0aW1hdGUgdXNhZ2VzIG9mIGBIYXNo Lm5ldyhbXSlgLCBhbmQgaXQgaXMgYSBrbm93biBidWcgdG8gbWFueSB1c2VycyBhcyB0aGV5IGRv IG5vdCBpbnRlbmQgZm9yIHRoYXQgYmVoYXZpb3IuIEl0IG1heSBiZSB3b3J0aHdoaWxlIHRvIHdh cm4gcGVvcGxlIGlmIHRoZXkgZG8gdXNlIGl0Lg0KDQojIyMgUHJvcG9zYWwgMzogUmVxdWlyZSBG cm96ZW4gb3IgVmFsdWVzDQoNClRoaXMgaXMgbW9yZSBicmVha2luZyB0aGFuIHRoZSBhYm92ZSwg YnV0IGl0IG1heSBtYWtlIHNlbnNlIHRvIHJlcXVpcmUgYW55IHZhbHVlIHBhc3NlZCB0byBgSGFz aC5uZXdgIHRvIGVpdGhlciBiZSBgZnJvemVuYCBvciBhIHZhbHVlIG9iamVjdCAoZS5nLiBgMWAg b3IgYHRydWVgKQ0KDQojIyBVcGRhdGluZyBSdWJvQ29wDQoNCkZhaWxpbmcgdGhpcywgSSBhbSBj b25zaWRlcmluZyBhZHZvY2F0aW5nIGZvciBSdWJvQ29wIGFuZCBzaW1pbGFyIGxpbnRlcnMgdG8g d2FybiBwZW9wbGUgYWdhaW5zdCB0aGlzIGJlaGF2aW9yIGFzIGl0IGlzIG5vdCBpbnRlbmRlZCBp biBtb3N0IHRvIGFsbCBjYXNlczoNCg0KaHR0cHM6Ly9naXRodWIuY29tL3J1Ym9jb3AvcnVib2Nv cC9pc3N1ZXMvMTEwMTMNCg0KLi4uYnV0IGFzIEBpb3F1YXRpeCBoYXMgbWVudGlvbmVkIG9uIHRo ZSBpc3N1ZSBpdCB3b3VsZCBtYWtlIG1vcmUgc2Vuc2UgdG8gZml4IFJ1YnkgcmF0aGVyIHRoYW4g cHV0IGEgcGF0Y2ggb24gdG9wIG9mIGl0LiBJIHdvdWxkIGJlIGluY2xpbmVkIHRvIGFncmVlIHdp dGggaGlzIGFzc2Vzc21lbnQsIGFuZCB3b3VsZCByYXRoZXIgZml4IHRoaXMgYXQgYSBsYW5ndWFn ZSBsZXZlbCBhcyBpdCBpcyBhIGtub3duIHBvaW50IG9mIGNvbmZ1c2lvbi4NCg0KIyMgRmluYWwg VGhvdWdodHMNCg0KSSB3b3VsZCBhc2sgdGhhdCBtYWludGFpbmVycyBjb25zaWRlciB0aGUgY29u ZnVzaW9uIHRoYXQgdGhpcyBoYXMgY2F1c2VkIGluIHRoZSBjb21tdW5pdHksIHJhdGhlciB0aGFu IGFzc2VydGluZyB0aGlzICJ3b3JrcyBhcyBpbnRlbmRlZC4iIEl0IGRvZXMgd29yayBhcyBpbnRl bmRlZCwgYnV0IHRoZSBpbnRlbmRlZCBmdW5jdGlvbmFsaXR5IGNhbiBtYWtlIFJ1YnkgbW9yZSBk aWZmaWN1bHQgZm9yIGJlZ2lubmVycy4gV2Ugc2hvdWxkIGtlZXAgdGhpcyBpbiBtaW5kLg0KDQoN Cg0KLS0gDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8NCgpVbnN1YnNjcmliZTogPG1haWx0 bzpydWJ5LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3JpYmU+Cjxo dHRwOi8vbGlzdHMucnVieS1sYW5nLm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9ydWJ5LWNv cmU+Cg==