[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110335] [Ruby master Feature#19063] Hash.new with non-value objects should be less confusing
From:
"sawa (Tsuyoshi Sawada)" <noreply@...>
Date:
2022-10-17 03:37:12 UTC
List:
ruby-core #110335
SXNzdWUgIzE5MDYzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgc2F3YSAoVHN1eW9zaGkgU2F3YWRhKS4K CgpiYXdlYXZlciAoQnJhbmRvbiBXZWF2ZXIpIHdyb3RlIGluICNub3RlLTU6Cj4gVGhlbiB3aGF0 IHdvdWxkIHF1YWxpZnkgYXMgYSBwcm9vZj8KCkkgZG9uJ3QgdGhpbmsgaXQgaXMgcHJvdmFibGUu IFRoYXQgaXMgbXkgcG9pbnQuIFlvdSBtYWRlIGEgc3RhdGVtZW50IHRoYXQgY2Fubm90IGJlIGFz c3VyZWQuCgpJIGtub3cgdGhhdCBhIGxvdCBvZiBiZWdpbm5lcnMgbWFrZSB0aGUga2luZCBvZiBt aXN0YWtlIHlvdSBtZW50aW9uLiBBbmQgSSBhbSBub3QgbmVjZXNzYXJpbHkgYWdhaW5zdCBpbXBy b3ZpbmcgdGhhdCBzaXR1YXRpb24uIEhvd2V2ZXIsIEkgYW0gYWdhaW5zdCB5b3VyIGRlc2NyaXB0 aW9uIG9mIHRoZSBpc3N1ZSBmcm9tIGEgZmV3IHJlc3BlY3RzLgoKMS4gWW91ciBhc3NlcnRpb24g b2YgdGhpcyBpc3N1ZSBhcyBiZWluZyBSdWJ5J3MgYnVnIG9yIHRoZSBiZWhhdmlvciBhcyB1bmlu dGVuZGVkIGlzIGEgbWlzdGFrZSBhcyB5b3UgaGF2ZSBhZG1pdHRlZCBpbiBjb21tZW50ICMzLCBh bmQgSSBjb25zaWRlciBpdCBob3N0aWxlIHRvIHRoZSBSdWJ5IGRldmVsb3BlcnMuIEF0IG1vc3Qs IHlvdSBjYW4gc2F5IHRoYXQgaXQgaXMgYSBwaXRmYWxsLCBidXQgbmV2ZXIgYXMgdW5pbnRlbmRl ZC4gQ29kZSB3cml0dGVuIGJ5IGEgYmVnaW5uZXIgdXNpbmcgdGhpcyBmZWF0dXJlIG1heSBsaWtl bHkgKGJ1dCBub3QgbmVjZXNzYXJpbHkpIGJlIHVuaW50ZW5kZWQsIGJ1dCB0aGUgUnVieSdzIGJl aGF2aW9yIGlzIG5vdCB1bmludGVuZGVkLiBZb3Ugc2hvdWxkIG5vdCBjb25mdXNlIHRoZW0uCjIu IFlvdXIgcHJvcG9zYWwgMSB3b3VsZCBicmVhayBvbmUgb2YgdGhlIHZlcnkgYmFzaWMgcHJpbmNp cGxlcyBvZiBSdWJ5LCBvciBwZXJoYXBzIG9mIGFueSBjb21wdXRlciBsYW5ndWFnZSwgb3IgZXZl biBhbnkgbmF0dXJhbCBsYW5ndWFnZS4gVGhhdCBpcywgdGhlIGFyZ3VtZW50cyBwYXNzZWQgdG8g YSBtZXRob2QgYXJlIGV2YWx1YXRlZCBiZWZvcmUgKG9yIGluZGVwZW5kZW50bHkgb2YpIHRoZSBl eGVjdXRpb24gb2YgdGhlIG1ldGhvZC4gSW4gb3RoZXIgd29yZHMsIHRoZSBzZW1hbnRpY3Mgb2Yg dGhlIHdob2xlIGlzIGNhbGN1bGF0ZWQgZnJvbSB0aGUgc2VtYW50aWNzIG9mIGl0cyBwYXJ0cy4g SW4gdGhlIGNvbnRleHQgb2YgbmF0dXJhbCBsYW5ndWFnZSwgdGhpcyBwcmluY2lwbGUgaXMga25v d24gYXMgRnJlZ2UncyBjb21wb3NpdGlvbmFsaXR5LgoKT25seSBwcm9wb3NhbCAyIHNlZW1zIHRv IG1ha2Ugc2Vuc2UgdG8gbWUsIGJ1dCB3aXRoIHF1YWxpZmljYXRpb24gdGhhdCAiaXQgaXMgYSBr bm93biBidWciIGJlIHJlbW92ZWQuCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQpGZWF0dXJlICMxOTA2MzogSGFzaC5uZXcgd2l0aCBub24tdmFsdWUgb2JqZWN0cyBz aG91bGQgYmUgbGVzcyBjb25mdXNpbmcKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVz LzE5MDYzI2NoYW5nZS05OTYyNwoKKiBBdXRob3I6IGJhd2VhdmVyIChCcmFuZG9uIFdlYXZlcikK KiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KUmVsYXRlZCB0byAjMTA3MTMgYW5kICMyNzY0LgoKUnVieSdzIGBI YXNoLm5ld2AgYWNjZXB0cyBlaXRoZXIgYSBibG9jayBvciBhIHBhcmFtIGZvciBpdHMgZGVmYXVs dCB2YWx1ZS4gSW4gdGhlIGNhc2Ugb2Ygbm9uLXZhbHVlIG9iamVjdHMgdGhpcyBsZWFkcyB0byB1 bmV4cGVjdGVkIGJlaGF2aW9yczoKCmBgYHJ1YnkKYmFkX2hhc2hfd2l0aF9hcnJheV92YWx1ZXMg PSBIYXNoLm5ldyhbXSkKZ29vZF9oYXNoX3dpdGhfYXJyYXlfdmFsdWVzID0gSGFzaC5uZXcgeyB8 aCwga3wgaFtrXSA9IFtdIH0KYGBgCgpXaGlsZSwgYXMgQGhzYnQgaGFzIHNhaWQgaW4gdGhlIHBh c3QsIHRoaXMgaXMgYmVoYXZpbmcgYXMgaW50ZW5kZWQgZm9yIHRoZSBSdWJ5IGxhbmd1YWdlIGl0 IGhhcyBjYXVzZWQgYSBsb3Qgb2YgY29uZnVzaW9uIGluIHRoZSBjb21tdW5pdHkgb3ZlciB0aGUg eWVhcnMgYW5kIGlzIGEga25vd24gc2hhcnAtZWRnZS4KCk15IGFzc2VydGlvbiBpcyB0aGF0IHRo aXMgaXMgbm90IHRoZSBpbnRlbmRlZCBiZWhhdmlvciwgYW5kIEkgY2Fubm90IGZpbmQgYSBsZWdp dGltYXRlIHVzZWNhc2UgaW4gd2hpY2ggc29tZW9uZSBpbnRlbmRzIGZvciB0aGlzIHRvIGhhcHBl bi4gTW9yZSBvZnRlbiBuZXcgdXNlcnMgdG8gUnVieSBhcmUgY29uZnVzZWQgYnkgdGhpcyBiZWhh dmlvciBhbmQgc3BlbmQgYSBsb3Qgb2YgdGltZSBkZWJ1Z2dpbmcuCgpXZSBtdXN0IGNvbnNpZGVy IHRoZSBpbXBhY3QgdG8gUnVieSB1c2VycywgZGVzcGl0ZSB3aGF0IHRoZSBpbnRlbnQgb2YgdGhl IGxhbmd1YWdlIGlzLCBhbmQgbWFrZSB0aGUgbGFuZ3VhZ2UgbW9yZSBjbGVhciB3aGVyZSBwb3Nz aWJsZS4KCkdpdmVuIHRoYXQsIEkgaGF2ZSBhIGZldyBwb3RlbnRpYWwgcHJvcG9zYWxzIGZvciBS dWJ5IGNvbW1pdHRlcnMuCgojIyMgUHJvcG9zYWwgMTogRG8gV2hhdCBUaGV5IE1lYW50CgpXaGVu IHBlb3BsZSB1c2UgYEhhc2gubmV3KFtdKWAgdGhleSBtZWFuIGBIYXNoLm5ldyB7IHxoLCBrfCBo W2tdID0gW10gfWAuIENhbiB3ZSBtYWtlIHRoYXQgdGhlIGNhc2UgdGhhdCBpZiB5b3UgcGFzcyBh IG11dGFibGUgb3Igbm9uLXZhbHVlIG9iamVjdCB0aGF0IHRoZSBiZWhhdmlvciB3aWxsIGJlIGFz IGludGVuZGVkIHVzaW5nIGBkdXBgIG9yIG90aGVyIHRlY2huaXF1ZXM/CgpXaGVuIHVzZWQgaW4g dGhlIGFib3ZlIGluY29ycmVjdCB3YXkgaXQgaXMgbGlrZWx5IGlmIG5vdCBhbHdheXMgYnJva2Vu IGNvZGUuCgojIyMgUHJvcG9zYWwgMjogV2FybiBBYm91dCBVbmV4cGVjdGVkIEJlaGF2aW9yCgpB cyBtZW50aW9uZWQgYWJvdmUsIEkgZG8gbm90IGJlbGlldmUgdGhlcmUgYXJlIGxlZ2l0aW1hdGUg dXNhZ2VzIG9mIGBIYXNoLm5ldyhbXSlgLCBhbmQgaXQgaXMgYSBrbm93biBidWcgdG8gbWFueSB1 c2VycyBhcyB0aGV5IGRvIG5vdCBpbnRlbmQgZm9yIHRoYXQgYmVoYXZpb3IuIEl0IG1heSBiZSB3 b3J0aHdoaWxlIHRvIHdhcm4gcGVvcGxlIGlmIHRoZXkgZG8gdXNlIGl0LgoKIyMjIFByb3Bvc2Fs IDM6IFJlcXVpcmUgRnJvemVuIG9yIFZhbHVlcwoKVGhpcyBpcyBtb3JlIGJyZWFraW5nIHRoYW4g dGhlIGFib3ZlLCBidXQgaXQgbWF5IG1ha2Ugc2Vuc2UgdG8gcmVxdWlyZSBhbnkgdmFsdWUgcGFz c2VkIHRvIGBIYXNoLm5ld2AgdG8gZWl0aGVyIGJlIGBmcm96ZW5gIG9yIGEgdmFsdWUgb2JqZWN0 IChlLmcuIGAxYCBvciBgdHJ1ZWApCgojIyBVcGRhdGluZyBSdWJvQ29wCgpGYWlsaW5nIHRoaXMs IEkgYW0gY29uc2lkZXJpbmcgYWR2b2NhdGluZyBmb3IgUnVib0NvcCBhbmQgc2ltaWxhciBsaW50 ZXJzIHRvIHdhcm4gcGVvcGxlIGFnYWluc3QgdGhpcyBiZWhhdmlvciBhcyBpdCBpcyBub3QgaW50 ZW5kZWQgaW4gbW9zdCB0byBhbGwgY2FzZXM6CgpodHRwczovL2dpdGh1Yi5jb20vcnVib2NvcC9y dWJvY29wL2lzc3Vlcy8xMTAxMwoKLi4uYnV0IGFzIEBpb3F1YXRpeCBoYXMgbWVudGlvbmVkIG9u IHRoZSBpc3N1ZSBpdCB3b3VsZCBtYWtlIG1vcmUgc2Vuc2UgdG8gZml4IFJ1YnkgcmF0aGVyIHRo YW4gcHV0IGEgcGF0Y2ggb24gdG9wIG9mIGl0LiBJIHdvdWxkIGJlIGluY2xpbmVkIHRvIGFncmVl IHdpdGggaGlzIGFzc2Vzc21lbnQsIGFuZCB3b3VsZCByYXRoZXIgZml4IHRoaXMgYXQgYSBsYW5n dWFnZSBsZXZlbCBhcyBpdCBpcyBhIGtub3duIHBvaW50IG9mIGNvbmZ1c2lvbi4KCiMjIEZpbmFs IFRob3VnaHRzCgpJIHdvdWxkIGFzayB0aGF0IG1haW50YWluZXJzIGNvbnNpZGVyIHRoZSBjb25m dXNpb24gdGhhdCB0aGlzIGhhcyBjYXVzZWQgaW4gdGhlIGNvbW11bml0eSwgcmF0aGVyIHRoYW4g YXNzZXJ0aW5nIHRoaXMgIndvcmtzIGFzIGludGVuZGVkLiIgSXQgZG9lcyB3b3JrIGFzIGludGVu ZGVkLCBidXQgdGhlIGludGVuZGVkIGZ1bmN0aW9uYWxpdHkgY2FuIG1ha2UgUnVieSBtb3JlIGRp ZmZpY3VsdCBmb3IgYmVnaW5uZXJzLiBXZSBzaG91bGQga2VlcCB0aGlzIGluIG1pbmQuCgoKCi0t IApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8KClVuc3Vic2NyaWJlOiA8bWFpbHRvOnJ1Ynkt Y29yZS1yZXF1ZXN0QHJ1YnktbGFuZy5vcmc/c3ViamVjdD11bnN1YnNjcmliZT4KPGh0dHA6Ly9s aXN0cy5ydWJ5LWxhbmcub3JnL2NnaS1iaW4vbWFpbG1hbi9vcHRpb25zL3J1YnktY29yZT4K