[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110365] [Ruby master Feature#19063] Hash.new with non-value objects should be less confusing
From:
"Dan0042 (Daniel DeLorme)" <noreply@...>
Date:
2022-10-17 13:47:44 UTC
List:
ruby-core #110365
SXNzdWUgIzE5MDYzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgRGFuMDA0MiAoRGFuaWVsIERlTG9ybWUp LgoKCnNhd2EgKFRzdXlvc2hpIFNhd2FkYSkgd3JvdGUgaW4gI25vdGUtMTU6Cj4gYGBgcnVieQo+ IGgyID0gSGFzaC5uZXd7fGgsIGt8ICJmb28ifQo+IGgzID0gSGFzaC5uZXd7ImZvbyJ9Cj4gCj4g aDJbOmFdICMgPT4gImZvbyIKPiBoM1s6YV0gIyA9PiAiZm9vIgo+IAo+IGgyICMgPT4ge30KPiBo MyAjID0+IHs6YT0+ImZvbyJ9Cj4gYGBgCgpJICpsb3ZlKiB0aGlzIGlkZWEhIEl0IG1ha2VzIHRo ZSBjb21tb24gY2FzZSBzbyBtdWNoIGVhc2llciBhbmQgdW5jbHV0dGVyZWQuIEl0J3MgZWFzeSB0 byBieXBhc3MgaWYgeW91IG5lZWQgdG8uIEl0IHdvcmtzIGdyZWF0IGluIGNvbWJpbmF0aW9uIHdp dGggYSBmcm96ZW4gZGVmYXVsdCB2YWx1ZTsgd2hlbiBgSGFzaC5uZXcoW10pYCBkb2Vzbid0IHdv cmsgYmVjYXVzZSB5b3UgY2FuJ3QgYXBwZW5kIHRvIGEgZnJvemVuIHZhbHVlLCB5b3UgdGhlbiBy ZWFjaCBmb3IgdGhlIG5leHQgb3B0aW9uIGBIYXNoLm5ld3tbXX1gCgpUaGUgbWFpbiBkb3duc2lk ZSBpcyBpbmNvbXBhdGliaWxpdHkgd2l0aCBwcmV2aW91cyBydWJ5IHZlcnNpb25zLiBJZiB0aGlz IGNoYW5nZSBtYWtlcyBpdCBpbnRvIDMuMiBhbmQgeW91IHVzZSB0aGF0IHZlcnNpb24gd2hlbiB3 cml0aW5nIGBIYXNoLm5ld3tbXX1gLCB0aGVuIHNvbWVvbmUgZWxzZSBydW5uaW5nIHRoYXQgY29k ZSB3aXRoIHJ1YnkgMy4xIHdpbGwgZ2V0IGJ1Z2d5IGhhcmQtdG8tZGlhZ25vc2UgYmVoYXZpb3Ig aW5zdGVhZCBvZiBhIHNpbXBsZSBleGNlcHRpb24uIFNvIG1heWJlIHRoaXMgd291bGQgYmUgYmV0 dGVyIGFzIGEgbmV3IG1ldGhvZCwgbGlrZSBgSGFzaC5uZXche1tdfWAgb3IgYEhhc2h7W119YC4K Ck5vdGUgdGhhdCBJIGhhdmVuJ3QgZm91bmQgdGhhdCBtYW55IGdlbXMgdGhhdCB1c2UgYEhhc2gu bmV3e3ZhbHVlfWAgc3ludGF4LCBhbmQgbW9zdCBvZiB0aGVtIHdvdWxkIHdvcmsgZmluZSB3aXRo IHRoaXMgY2hhbmdlOgoKYGBgcnVieQojYWN0aW9ucGFjay03LjAuMy9saWIvYWN0aW9uX2NvbnRy b2xsZXIvbWV0YWwvcGFyYW1ldGVyX2VuY29kaW5nLnJiCjQ5OiAgICAgICAgQF9wYXJhbWV0ZXJf ZW5jb2RpbmdzW2FjdGlvbi50b19zXSA9IEhhc2gubmV3IHsgRW5jb2Rpbmc6OkFTQ0lJXzhCSVQg fQoKI2FjdGlvbnZpZXctNy4wLjMvbGliL2FjdGlvbl92aWV3L2hlbHBlcnMvdGFnX2hlbHBlci5y Ygo0MDogICAgICBQUkVfQ09OVEVOVF9TVFJJTkdTICAgICAgICAgICAgID0gSGFzaC5uZXcgeyAi IiB9CgojYnVubnktMi4xOS4wL2xpYi9idW5ueS9hdXRoZW50aWNhdGlvbi9jcmVkZW50aWFsc19l bmNvZGVyLnJiCjI5OiAgICAgICAgQEByZWdpc3RyeSB8fD0gSGFzaC5uZXcgeyByYWlzZSBOb3RJ bXBsZW1lbnRlZEVycm9yIH0KCiNjdWN1bWJlci1jb3JlLTEwLjEuMS9saWIvY3VjdW1iZXIvY29y ZS90ZXN0L2ZpbHRlcnMvdGFnX2ZpbHRlci5yYgozMjogICAgICAgICAgICBAdGVzdF9jYXNlc19i eV90YWdfbmFtZSA9IEhhc2gubmV3IHsgW10gfQoKI2N1Y3VtYmVyLWNvcmUtMTAuMS4xL2xpYi9j dWN1bWJlci9jb3JlL3Rlc3QvcmVzdWx0LnJiCjM0MDogICAgICAgICAgICBAdG90YWxzID0gSGFz aC5uZXcgeyAwIH0KCiNjdWN1bWJlci1jb3JlLTExLjAuMC9saWIvY3VjdW1iZXIvY29yZS90ZXN0 L2ZpbHRlcnMvdGFnX2ZpbHRlci5yYgozMjogICAgICAgICAgICBAdGVzdF9jYXNlc19ieV90YWdf bmFtZSA9IEhhc2gubmV3IHsgW10gfQoKI2N1Y3VtYmVyLWNvcmUtMTEuMC4wL2xpYi9jdWN1bWJl ci9jb3JlL3Rlc3QvcmVzdWx0LnJiCjM0MDogICAgICAgICAgICBAdG90YWxzID0gSGFzaC5uZXcg eyAwIH0KCiNpY2VfbmluZS0wLjExLjIvc3BlYy91bml0L2ljZV9uaW5lL2ZyZWV6ZXIvaGFzaC9j bGFzc19tZXRob2RzL2RlZXBfZnJlZXplX3NwZWMucmIKMTM6ICAgICAgSGFzaC5uZXcge30udXBk YXRlKE9iamVjdC5uZXcgPT4gT2JqZWN0Lm5ldykKCiNyZXNxdWUtMi4yLjEvbGliL3Jlc3F1ZS9z ZXJ2ZXIucmIKMTEwOiAgICAgICAgaG9zdHMgPSBIYXNoLm5ldyB7IFtdIH0KCiNyc3BlYy1jb3Jl LTMuMTEuMC9saWIvcnNwZWMvY29yZS9mb3JtYXR0ZXJzL2RlcHJlY2F0aW9uX2Zvcm1hdHRlci5y YgoxNDQ6ICAgICAgICAgICAgQHNlZW5fZGVwcmVjYXRpb25zID0gSGFzaC5uZXcgeyAwIH0KCiNy c3BlYy1jb3JlLTMuMTEuMC9saWIvcnNwZWMvY29yZS9ob29rcy5yYgo0OTY6ICAgICAgICAgIDpi ZWZvcmUgPT4gSGFzaC5uZXcgeyBCZWZvcmVIb29rIH0sCjQ5NzogICAgICAgICAgOmFmdGVyICA9 PiBIYXNoLm5ldyB7IEFmdGVySG9vayAgfSwKNDk4OiAgICAgICAgICA6YXJvdW5kID0+IEhhc2gu bmV3IHsgQXJvdW5kSG9vayB9Cgojc2VxdWVsLTUuNTcuMC9saWIvc2VxdWVsL2V4dGVuc2lvbnMv X3ByZXR0eV90YWJsZS5yYgo0MjogICAgICBzaXplcyA9IEhhc2gubmV3IHswfQoKI3Nwcm9ja2V0 cy00LjEuMS9saWIvc3Byb2NrZXRzL3RyYW5zZm9ybWVycy5yYgoxNTA6ICAgICAgICB0cmFuc2Zv cm1lcnMgICAgICAgICAgPSBIYXNoLm5ldyB7IHt9IH0KMTUxOiAgICAgICAgaW52ZXJ0ZWRfdHJh bnNmb3JtZXJzID0gSGFzaC5uZXcgeyBTZXQubmV3IH0KYGBgCgoKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpGZWF0dXJlICMxOTA2MzogSGFzaC5uZXcgd2l0aCBub24t dmFsdWUgb2JqZWN0cyBzaG91bGQgYmUgbGVzcyBjb25mdXNpbmcKaHR0cHM6Ly9idWdzLnJ1Ynkt bGFuZy5vcmcvaXNzdWVzLzE5MDYzI2NoYW5nZS05OTY1OAoKKiBBdXRob3I6IGJhd2VhdmVyIChC cmFuZG9uIFdlYXZlcikKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KUmVsYXRlZCB0byAjMTA3MTMgYW5kICMy NzY0LgoKUnVieSdzIGBIYXNoLm5ld2AgYWNjZXB0cyBlaXRoZXIgYSBibG9jayBvciBhIHBhcmFt IGZvciBpdHMgZGVmYXVsdCB2YWx1ZS4gSW4gdGhlIGNhc2Ugb2Ygbm9uLXZhbHVlIG9iamVjdHMg dGhpcyBsZWFkcyB0byB1bmV4cGVjdGVkIGJlaGF2aW9yczoKCmBgYHJ1YnkKYmFkX2hhc2hfd2l0 aF9hcnJheV92YWx1ZXMgPSBIYXNoLm5ldyhbXSkKZ29vZF9oYXNoX3dpdGhfYXJyYXlfdmFsdWVz ID0gSGFzaC5uZXcgeyB8aCwga3wgaFtrXSA9IFtdIH0KYGBgCgpXaGlsZSwgYXMgQGhzYnQgaGFz IHNhaWQgaW4gdGhlIHBhc3QsIHRoaXMgaXMgYmVoYXZpbmcgYXMgaW50ZW5kZWQgZm9yIHRoZSBS dWJ5IGxhbmd1YWdlIGl0IGhhcyBjYXVzZWQgYSBsb3Qgb2YgY29uZnVzaW9uIGluIHRoZSBjb21t dW5pdHkgb3ZlciB0aGUgeWVhcnMgYW5kIGlzIGEga25vd24gc2hhcnAtZWRnZS4KCk15IGFzc2Vy dGlvbiBpcyB0aGF0IHRoaXMgaXMgbm90IHRoZSBpbnRlbmRlZCBiZWhhdmlvciwgYW5kIEkgY2Fu bm90IGZpbmQgYSBsZWdpdGltYXRlIHVzZWNhc2UgaW4gd2hpY2ggc29tZW9uZSBpbnRlbmRzIGZv ciB0aGlzIHRvIGhhcHBlbi4gTW9yZSBvZnRlbiBuZXcgdXNlcnMgdG8gUnVieSBhcmUgY29uZnVz ZWQgYnkgdGhpcyBiZWhhdmlvciBhbmQgc3BlbmQgYSBsb3Qgb2YgdGltZSBkZWJ1Z2dpbmcuCgpX ZSBtdXN0IGNvbnNpZGVyIHRoZSBpbXBhY3QgdG8gUnVieSB1c2VycywgZGVzcGl0ZSB3aGF0IHRo ZSBpbnRlbnQgb2YgdGhlIGxhbmd1YWdlIGlzLCBhbmQgbWFrZSB0aGUgbGFuZ3VhZ2UgbW9yZSBj bGVhciB3aGVyZSBwb3NzaWJsZS4KCkdpdmVuIHRoYXQsIEkgaGF2ZSBhIGZldyBwb3RlbnRpYWwg cHJvcG9zYWxzIGZvciBSdWJ5IGNvbW1pdHRlcnMuCgojIyMgUHJvcG9zYWwgMTogRG8gV2hhdCBU aGV5IE1lYW50CgpXaGVuIHBlb3BsZSB1c2UgYEhhc2gubmV3KFtdKWAgdGhleSBtZWFuIGBIYXNo Lm5ldyB7IHxoLCBrfCBoW2tdID0gW10gfWAuIENhbiB3ZSBtYWtlIHRoYXQgdGhlIGNhc2UgdGhh dCBpZiB5b3UgcGFzcyBhIG11dGFibGUgb3Igbm9uLXZhbHVlIG9iamVjdCB0aGF0IHRoZSBiZWhh dmlvciB3aWxsIGJlIGFzIGludGVuZGVkIHVzaW5nIGBkdXBgIG9yIG90aGVyIHRlY2huaXF1ZXM/ CgpXaGVuIHVzZWQgaW4gdGhlIGFib3ZlIGluY29ycmVjdCB3YXkgaXQgaXMgbGlrZWx5IGlmIG5v dCBhbHdheXMgYnJva2VuIGNvZGUuCgojIyMgUHJvcG9zYWwgMjogV2FybiBBYm91dCBVbmV4cGVj dGVkIEJlaGF2aW9yCgpBcyBtZW50aW9uZWQgYWJvdmUsIEkgZG8gbm90IGJlbGlldmUgdGhlcmUg YXJlIGxlZ2l0aW1hdGUgdXNhZ2VzIG9mIGBIYXNoLm5ldyhbXSlgLCBhbmQgaXQgaXMgYSBrbm93 biBidWcgdG8gbWFueSB1c2VycyBhcyB0aGV5IGRvIG5vdCBpbnRlbmQgZm9yIHRoYXQgYmVoYXZp b3IuIEl0IG1heSBiZSB3b3J0aHdoaWxlIHRvIHdhcm4gcGVvcGxlIGlmIHRoZXkgZG8gdXNlIGl0 LgoKIyMjIFByb3Bvc2FsIDM6IFJlcXVpcmUgRnJvemVuIG9yIFZhbHVlcwoKVGhpcyBpcyBtb3Jl IGJyZWFraW5nIHRoYW4gdGhlIGFib3ZlLCBidXQgaXQgbWF5IG1ha2Ugc2Vuc2UgdG8gcmVxdWly ZSBhbnkgdmFsdWUgcGFzc2VkIHRvIGBIYXNoLm5ld2AgdG8gZWl0aGVyIGJlIGBmcm96ZW5gIG9y IGEgdmFsdWUgb2JqZWN0IChlLmcuIGAxYCBvciBgdHJ1ZWApCgojIyBVcGRhdGluZyBSdWJvQ29w CgpGYWlsaW5nIHRoaXMsIEkgYW0gY29uc2lkZXJpbmcgYWR2b2NhdGluZyBmb3IgUnVib0NvcCBh bmQgc2ltaWxhciBsaW50ZXJzIHRvIHdhcm4gcGVvcGxlIGFnYWluc3QgdGhpcyBiZWhhdmlvciBh cyBpdCBpcyBub3QgaW50ZW5kZWQgaW4gbW9zdCB0byBhbGwgY2FzZXM6CgpodHRwczovL2dpdGh1 Yi5jb20vcnVib2NvcC9ydWJvY29wL2lzc3Vlcy8xMTAxMwoKLi4uYnV0IGFzIEBpb3F1YXRpeCBo YXMgbWVudGlvbmVkIG9uIHRoZSBpc3N1ZSBpdCB3b3VsZCBtYWtlIG1vcmUgc2Vuc2UgdG8gZml4 IFJ1YnkgcmF0aGVyIHRoYW4gcHV0IGEgcGF0Y2ggb24gdG9wIG9mIGl0LiBJIHdvdWxkIGJlIGlu Y2xpbmVkIHRvIGFncmVlIHdpdGggaGlzIGFzc2Vzc21lbnQsIGFuZCB3b3VsZCByYXRoZXIgZml4 IHRoaXMgYXQgYSBsYW5ndWFnZSBsZXZlbCBhcyBpdCBpcyBhIGtub3duIHBvaW50IG9mIGNvbmZ1 c2lvbi4KCiMjIEZpbmFsIFRob3VnaHRzCgpJIHdvdWxkIGFzayB0aGF0IG1haW50YWluZXJzIGNv bnNpZGVyIHRoZSBjb25mdXNpb24gdGhhdCB0aGlzIGhhcyBjYXVzZWQgaW4gdGhlIGNvbW11bml0 eSwgcmF0aGVyIHRoYW4gYXNzZXJ0aW5nIHRoaXMgIndvcmtzIGFzIGludGVuZGVkLiIgSXQgZG9l cyB3b3JrIGFzIGludGVuZGVkLCBidXQgdGhlIGludGVuZGVkIGZ1bmN0aW9uYWxpdHkgY2FuIG1h a2UgUnVieSBtb3JlIGRpZmZpY3VsdCBmb3IgYmVnaW5uZXJzLiBXZSBzaG91bGQga2VlcCB0aGlz IGluIG1pbmQuCgoKCi0tIApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy8KClVuc3Vic2NyaWJl OiA8bWFpbHRvOnJ1YnktY29yZS1yZXF1ZXN0QHJ1YnktbGFuZy5vcmc/c3ViamVjdD11bnN1YnNj cmliZT4KPGh0dHA6Ly9saXN0cy5ydWJ5LWxhbmcub3JnL2NnaS1iaW4vbWFpbG1hbi9vcHRpb25z L3J1YnktY29yZT4K