[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110329] [Ruby master Feature#19063] Hash.new with non-value objects should be less confusing
From:
"baweaver (Brandon Weaver)" <noreply@...>
Date:
2022-10-17 02:54:37 UTC
List:
ruby-core #110329
SXNzdWUgIzE5MDYzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgYmF3ZWF2ZXIgKEJyYW5kb24gV2VhdmVy KS4KCgpzYXdhIChUc3V5b3NoaSBTYXdhZGEpIHdyb3RlIGluICNub3RlLTI6Cj4gPiBXaGVuIHBl b3BsZSB1c2UgSGFzaC5uZXcoW10pIHRoZXkgbWVhbiBIYXNoLm5ldyB7IHxoLCBrfCBoW2tdID0g W10gfS4KPiAKPiBJIGRvbid0IHRoaW5rIHNvLiBDYW4geW91IHByb3ZlIGl0PyBGb3Igbm90ZSwg Y29taW5nIHVwIHdpdGggYSBsb3Qgb2YgZXhhbXBsZXMgcG9pbnRpbmcgdG93YXJkcyB0aGF0IGlz IG5vdCBhIHByb29mLgoKRG8geW91IGhhdmUgZXhhbXBsZXMgb2YgdGhpcz8gSSBoYXZlIGhhZCBz ZXZlcmFsIGNhc2VzIGFjcm9zcyBtdWx0aXBsZSBsYXJnZSBSdWJ5IGNvbXBhbmllcyB3aGVyZSB0 aGlzIGJlaGF2aW9yIGhhZCBjb25mdXNlZCBwZW9wbGU6CgpgYGBydWJ5CjMuMS4wIDowMDEgPiBh cnJheSA9IFtdCiA9PiBbXQozLjEuMCA6MDAyID4gaGFzaCA9IEhhc2gubmV3KGFycmF5KQogPT4g e30KMy4xLjAgOjAwMyA+IGhhc2hbOmFdIDw8IDEKID0+IFsxXQozLjEuMCA6MDA0ID4gaGFzaFs6 Yl0gPDwgMgogPT4gWzEsIDJdCjMuMS4wIDowMDUgPiBoYXNoWzpjXSA8PCAzCiA9PiBbMSwgMiwg M10KMy4xLjAgOjAwNiA+IGhhc2gKID0+IHt9CjMuMS4wIDowMDcgPiBhcnJheQogPT4gWzEsIDIs IDNdCmBgYAoKSXQgaXMgdmVyeSBzaW1pbGFyIHRvIHRoZSBbZGVmYXVsdCBsaXN0IGFyZ3VtZW50 IGluIFB5dGhvbl0oaHR0cHM6Ly9kb2NzLnB5dGhvbi1ndWlkZS5vcmcvd3JpdGluZy9nb3RjaGFz Lykgd2hpY2ggaXMgYWxzbyBjb25mdXNpbmcgdG8gcGVvcGxlOgoKYGBgcHl0aG9uCmRlZiBhcHBl bmRfdG8oZWxlbWVudCwgdG89W10pOgogICAgdG8uYXBwZW5kKGVsZW1lbnQpCiAgICByZXR1cm4g dG8KCm15X2xpc3QgPSBhcHBlbmRfdG8oMTIpCnByaW50KG15X2xpc3QpCiMgWzEyXQoKbXlfb3Ro ZXJfbGlzdCA9IGFwcGVuZF90byg0MikKcHJpbnQobXlfb3RoZXJfbGlzdCkKIyBbMTIsIDQyXQpg YGAKCklmIHlvdSB3b3VsZCBsaWtlIEkgY2FuIHBvbGwgcGVvcGxlLCBidXQgd2hlbiB0ZWFjaGlu ZyBSdWJ5IGl0IGhhcyBiZWVuIGEgdmVyeSBjb21tb24gc291cmNlIG9mIGNvbmZ1c2lvbiBhbmQg SSBoYXZlIHlldCB0byBtZWV0IHNvbWVvbmUgb3Igc2VlbiBjb2RlIHdoZXJlIHRoaXMgd2FzIGlu dGVudGlvbmFsLiBQZXJoYXBzIHRoZXJlIGFyZSwgYnV0IHRoZXkgYXJlIHZlcnkgcmFyZSwgYW5k IHRoaXMgaXMgYSB2ZXJ5IGNvbW1vbiBpc3N1ZSB0byBSdWJ5IHVzZXJzIGluIHRoZSBwbGFjZXMg SSBoYXZlIHdvcmtlZC4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K RmVhdHVyZSAjMTkwNjM6IEhhc2gubmV3IHdpdGggbm9uLXZhbHVlIG9iamVjdHMgc2hvdWxkIGJl IGxlc3MgY29uZnVzaW5nCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xOTA2MyNj aGFuZ2UtOTk2MjEKCiogQXV0aG9yOiBiYXdlYXZlciAoQnJhbmRvbiBXZWF2ZXIpCiogU3RhdHVz OiBPcGVuCiogUHJpb3JpdHk6IE5vcm1hbAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tClJlbGF0ZWQgdG8gIzEwNzEzIGFuZCAjMjc2NC4KClJ1YnkncyBgSGFzaC5uZXdg IGFjY2VwdHMgZWl0aGVyIGEgYmxvY2sgb3IgYSBwYXJhbSBmb3IgaXRzIGRlZmF1bHQgdmFsdWUu IEluIHRoZSBjYXNlIG9mIG5vbi12YWx1ZSBvYmplY3RzIHRoaXMgbGVhZHMgdG8gdW5leHBlY3Rl ZCBiZWhhdmlvcnM6CgpgYGBydWJ5CmJhZF9oYXNoX3dpdGhfYXJyYXlfdmFsdWVzID0gSGFzaC5u ZXcoW10pCmdvb2RfaGFzaF93aXRoX2FycmF5X3ZhbHVlcyA9IEhhc2gubmV3IHsgfGgsIGt8IGhb a10gPSBbXSB9CmBgYAoKV2hpbGUsIGFzIEBoc2J0IGhhcyBzYWlkIGluIHRoZSBwYXN0LCB0aGlz IGlzIGJlaGF2aW5nIGFzIGludGVuZGVkIGZvciB0aGUgUnVieSBsYW5ndWFnZSBpdCBoYXMgY2F1 c2VkIGEgbG90IG9mIGNvbmZ1c2lvbiBpbiB0aGUgY29tbXVuaXR5IG92ZXIgdGhlIHllYXJzIGFu ZCBpcyBhIGtub3duIHNoYXJwLWVkZ2UuCgpNeSBhc3NlcnRpb24gaXMgdGhhdCB0aGlzIGlzIG5v dCB0aGUgaW50ZW5kZWQgYmVoYXZpb3IsIGFuZCBJIGNhbm5vdCBmaW5kIGEgbGVnaXRpbWF0ZSB1 c2VjYXNlIGluIHdoaWNoIHNvbWVvbmUgaW50ZW5kcyBmb3IgdGhpcyB0byBoYXBwZW4uIE1vcmUg b2Z0ZW4gbmV3IHVzZXJzIHRvIFJ1YnkgYXJlIGNvbmZ1c2VkIGJ5IHRoaXMgYmVoYXZpb3IgYW5k IHNwZW5kIGEgbG90IG9mIHRpbWUgZGVidWdnaW5nLgoKV2UgbXVzdCBjb25zaWRlciB0aGUgaW1w YWN0IHRvIFJ1YnkgdXNlcnMsIGRlc3BpdGUgd2hhdCB0aGUgaW50ZW50IG9mIHRoZSBsYW5ndWFn ZSBpcywgYW5kIG1ha2UgdGhlIGxhbmd1YWdlIG1vcmUgY2xlYXIgd2hlcmUgcG9zc2libGUuCgpH aXZlbiB0aGF0LCBJIGhhdmUgYSBmZXcgcG90ZW50aWFsIHByb3Bvc2FscyBmb3IgUnVieSBjb21t aXR0ZXJzLgoKIyMjIFByb3Bvc2FsIDE6IERvIFdoYXQgVGhleSBNZWFudAoKV2hlbiBwZW9wbGUg dXNlIGBIYXNoLm5ldyhbXSlgIHRoZXkgbWVhbiBgSGFzaC5uZXcgeyB8aCwga3wgaFtrXSA9IFtd IH1gLiBDYW4gd2UgbWFrZSB0aGF0IHRoZSBjYXNlIHRoYXQgaWYgeW91IHBhc3MgYSBtdXRhYmxl IG9yIG5vbi12YWx1ZSBvYmplY3QgdGhhdCB0aGUgYmVoYXZpb3Igd2lsbCBiZSBhcyBpbnRlbmRl ZCB1c2luZyBgZHVwYCBvciBvdGhlciB0ZWNobmlxdWVzPwoKV2hlbiB1c2VkIGluIHRoZSBhYm92 ZSBpbmNvcnJlY3Qgd2F5IGl0IGlzIGxpa2VseSBpZiBub3QgYWx3YXlzIGJyb2tlbiBjb2RlLgoK IyMjIFByb3Bvc2FsIDI6IFdhcm4gQWJvdXQgVW5leHBlY3RlZCBCZWhhdmlvcgoKQXMgbWVudGlv bmVkIGFib3ZlLCBJIGRvIG5vdCBiZWxpZXZlIHRoZXJlIGFyZSBsZWdpdGltYXRlIHVzYWdlcyBv ZiBgSGFzaC5uZXcoW10pYCwgYW5kIGl0IGlzIGEga25vd24gYnVnIHRvIG1hbnkgdXNlcnMgYXMg dGhleSBkbyBub3QgaW50ZW5kIGZvciB0aGF0IGJlaGF2aW9yLiBJdCBtYXkgYmUgd29ydGh3aGls ZSB0byB3YXJuIHBlb3BsZSBpZiB0aGV5IGRvIHVzZSBpdC4KCiMjIyBQcm9wb3NhbCAzOiBSZXF1 aXJlIEZyb3plbiBvciBWYWx1ZXMKClRoaXMgaXMgbW9yZSBicmVha2luZyB0aGFuIHRoZSBhYm92 ZSwgYnV0IGl0IG1heSBtYWtlIHNlbnNlIHRvIHJlcXVpcmUgYW55IHZhbHVlIHBhc3NlZCB0byBg SGFzaC5uZXdgIHRvIGVpdGhlciBiZSBgZnJvemVuYCBvciBhIHZhbHVlIG9iamVjdCAoZS5nLiBg MWAgb3IgYHRydWVgKQoKIyMgVXBkYXRpbmcgUnVib0NvcAoKRmFpbGluZyB0aGlzLCBJIGFtIGNv bnNpZGVyaW5nIGFkdm9jYXRpbmcgZm9yIFJ1Ym9Db3AgYW5kIHNpbWlsYXIgbGludGVycyB0byB3 YXJuIHBlb3BsZSBhZ2FpbnN0IHRoaXMgYmVoYXZpb3IgYXMgaXQgaXMgbm90IGludGVuZGVkIGlu IG1vc3QgdG8gYWxsIGNhc2VzOgoKaHR0cHM6Ly9naXRodWIuY29tL3J1Ym9jb3AvcnVib2NvcC9p c3N1ZXMvMTEwMTMKCi4uLmJ1dCBhcyBAaW9xdWF0aXggaGFzIG1lbnRpb25lZCBvbiB0aGUgaXNz dWUgaXQgd291bGQgbWFrZSBtb3JlIHNlbnNlIHRvIGZpeCBSdWJ5IHJhdGhlciB0aGFuIHB1dCBh IHBhdGNoIG9uIHRvcCBvZiBpdC4gSSB3b3VsZCBiZSBpbmNsaW5lZCB0byBhZ3JlZSB3aXRoIGhp cyBhc3Nlc3NtZW50LCBhbmQgd291bGQgcmF0aGVyIGZpeCB0aGlzIGF0IGEgbGFuZ3VhZ2UgbGV2 ZWwgYXMgaXQgaXMgYSBrbm93biBwb2ludCBvZiBjb25mdXNpb24uCgojIyBGaW5hbCBUaG91Z2h0 cwoKSSB3b3VsZCBhc2sgdGhhdCBtYWludGFpbmVycyBjb25zaWRlciB0aGUgY29uZnVzaW9uIHRo YXQgdGhpcyBoYXMgY2F1c2VkIGluIHRoZSBjb21tdW5pdHksIHJhdGhlciB0aGFuIGFzc2VydGlu ZyB0aGlzICJ3b3JrcyBhcyBpbnRlbmRlZC4iIEl0IGRvZXMgd29yayBhcyBpbnRlbmRlZCwgYnV0 IHRoZSBpbnRlbmRlZCBmdW5jdGlvbmFsaXR5IGNhbiBtYWtlIFJ1YnkgbW9yZSBkaWZmaWN1bHQg Zm9yIGJlZ2lubmVycy4gV2Ugc2hvdWxkIGtlZXAgdGhpcyBpbiBtaW5kLgoKCgotLSAKaHR0cHM6 Ly9idWdzLnJ1YnktbGFuZy5vcmcvCgpVbnN1YnNjcmliZTogPG1haWx0bzpydWJ5LWNvcmUtcmVx dWVzdEBydWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3JpYmU+CjxodHRwOi8vbGlzdHMucnVi eS1sYW5nLm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9ydWJ5LWNvcmU+Cg==