[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110370] [Ruby master Feature#19063] Hash.new with non-value objects should be less confusing
From:
"baweaver (Brandon Weaver)" <noreply@...>
Date:
2022-10-17 17:49:36 UTC
List:
ruby-core #110370
SXNzdWUgIzE5MDYzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgYmF3ZWF2ZXIgKEJyYW5kb24gV2VhdmVy KS4KCgpJIHdvdWxkIGFncmVlIHRoYXQgYEhhc2gubmV3IHsgW10gfWAgd291bGQgYmUgdmVyeSBu aWNlLCBhbmQgYXMgbWVudGlvbmVkIGhhcyBhIGR1YWwgaW4gYEFycmF5Lm5ldyg1KSB7IFtdIH1g LgoKV2hpbGUgSSBkbyBub3QgdGhpbmsgdGhhdCBpdCBpcyBhIGJ1ZyAoYW5kIG15IGFwb2xvZ2ll cyBmb3IgZWFybGllciBiYWQgd29yZGluZykgdG8gaGF2ZSBgSGFzaC5uZXcoW10pYCBkbyB3aGF0 IGl0IGN1cnJlbnRseSBkb2VzLCBJIHdvdWxkIGxpa2UgdG8gY2xhcmlmeSB3aGF0IEkgbWVhbnQu IE15IGludGVuZGVkIG1lYW5pbmcgd2FzIHRoYXQgbmV3IFJ1YnkgdXNlcnMgX3RoaW5rXyBpdCBp cyBhIGJ1ZyB3aGVuIHRoZXkgcmVhbGl6ZSB0aGUgYmVoYXZpb3IsIHdoaWNoIGNhbiBiZSB0aGUg Y2F1c2Ugb2YgY29uZnVzaW9uLiBNeSBkZXNpcmUgaXMgdG8gbWFrZSBSdWJ5IG1vcmUgdW5kZXJz dGFuZGFibGUgZm9yIG5ldyB1c2VycywgYW5kIHByZXZlbnQgY29uZnVzaW9uIHdoZXJlIHBvc3Np YmxlLgoKSSBhcHByZWNpYXRlIHRoYXQgbmV3ZXIgdmVyc2lvbnMgb2YgdGhlIGRvY3MgZXhwbGlj aXRseSBjYWxsIHRoaXMgYmVoYXZpb3Igb3V0LCBJIGhhZCBub3Qgc2VlbiB0aGF0IGluIHRoZSBw YXN0LCBzbyBJIHdvdWxkIGxpa2UgdG8gdGhhbmsgd2hvZXZlciBhZGRlZCB0aGF0LgoKR2l2ZW4g dGhlIGFib3ZlIGNvbnZlcnNhdGlvbiBJIHdvdWxkIHN0aWxsIGJlIGluIGZhdm9yIG9mIGEgd2Fy bmluZyBvbiBpbnN0YW5jZXMgb2YgYEhhc2gubmV3YCB3aGVuIGNhbGxlZCB3aXRoIG11dGFibGUg b2JqZWN0cyBsaWtlIGBbXWAgYXMgdGhpcyBkb2VzIGEgZmV3IHRoaW5nczoKCjEuIENhbGwgb3V0 IHBvdGVudGlhbGx5IGNvbmZ1c2luZyBiZWhhdmlvciBmb3IgbmV3IHVzZXJzCjIuIE5vdCBicmVh ayBjb21wYXRpYmlsaXR5CjMuIENvdWxkIGJlIHR1cm5lZCBvZmYgYnkgYWR2YW5jZWQgdXNlcnMg d2hvIGludGVuZCB0aGlzIGJlaGF2aW9yCgpPdXRzaWRlIG9mIGNsZXZlciB1c2FnZXMgaW4gZXhw ZXJpbWVudGFsIHJlcG9zIEkgaGF2ZSBub3QgYmVlbiBmaW5kaW5nIGludGVudGlvbmFsIHVzYWdl cyBvZiB0aGlzIHN5bnRheCwgc28gSSB3b3VsZCB0aGluayB0aGlzIHdvdWxkIGJlIGFuIGFjY2Vw dGFibGUgY29tcHJvbWlzZSBnaXZlbiB0aGUgZnJlcXVlbmN5IG9mIHVuaW50ZW5kZWQgdXNhZ2Ug YXMgbm90ZWQgYnkgQGF1c3Rpbi4KCgpAc2F3YSAvIEBtYXR6IC0gU2hvdWxkIHdlIG9wZW4gYSBu ZXcgdGlja2V0IGZvciB0aGlzIHNob3J0aGFuZCBgSGFzaC5uZXcgeyBbXSB9YCBzeW50YXg/IEl0 IG1heSBiZSB3b3J0aCBpdHMgb3duIG5ldyBjb252ZXJzYXRpb24sIGJ1dCBJIGFtIHZlcnkgcG9z aXRpdmUgb2YgdGhpcyBzeW50YXguCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCkZlYXR1cmUgIzE5MDYzOiBIYXNoLm5ldyB3aXRoIG5vbi12YWx1ZSBvYmplY3RzIHNo b3VsZCBiZSBsZXNzIGNvbmZ1c2luZwpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMv MTkwNjMjY2hhbmdlLTk5NjY0CgoqIEF1dGhvcjogYmF3ZWF2ZXIgKEJyYW5kb24gV2VhdmVyKQoq IFN0YXR1czogT3BlbgoqIFByaW9yaXR5OiBOb3JtYWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQpSZWxhdGVkIHRvICMxMDcxMyBhbmQgIzI3NjQuCgpSdWJ5J3MgYEhh c2gubmV3YCBhY2NlcHRzIGVpdGhlciBhIGJsb2NrIG9yIGEgcGFyYW0gZm9yIGl0cyBkZWZhdWx0 IHZhbHVlLiBJbiB0aGUgY2FzZSBvZiBub24tdmFsdWUgb2JqZWN0cyB0aGlzIGxlYWRzIHRvIHVu ZXhwZWN0ZWQgYmVoYXZpb3JzOgoKYGBgcnVieQpiYWRfaGFzaF93aXRoX2FycmF5X3ZhbHVlcyA9 IEhhc2gubmV3KFtdKQpnb29kX2hhc2hfd2l0aF9hcnJheV92YWx1ZXMgPSBIYXNoLm5ldyB7IHxo LCBrfCBoW2tdID0gW10gfQpgYGAKCldoaWxlLCBhcyBAaHNidCBoYXMgc2FpZCBpbiB0aGUgcGFz dCwgdGhpcyBpcyBiZWhhdmluZyBhcyBpbnRlbmRlZCBmb3IgdGhlIFJ1YnkgbGFuZ3VhZ2UgaXQg aGFzIGNhdXNlZCBhIGxvdCBvZiBjb25mdXNpb24gaW4gdGhlIGNvbW11bml0eSBvdmVyIHRoZSB5 ZWFycyBhbmQgaXMgYSBrbm93biBzaGFycC1lZGdlLgoKTXkgYXNzZXJ0aW9uIGlzIHRoYXQgdGhp cyBpcyBub3QgdGhlIGludGVuZGVkIGJlaGF2aW9yLCBhbmQgSSBjYW5ub3QgZmluZCBhIGxlZ2l0 aW1hdGUgdXNlY2FzZSBpbiB3aGljaCBzb21lb25lIGludGVuZHMgZm9yIHRoaXMgdG8gaGFwcGVu LiBNb3JlIG9mdGVuIG5ldyB1c2VycyB0byBSdWJ5IGFyZSBjb25mdXNlZCBieSB0aGlzIGJlaGF2 aW9yIGFuZCBzcGVuZCBhIGxvdCBvZiB0aW1lIGRlYnVnZ2luZy4KCldlIG11c3QgY29uc2lkZXIg dGhlIGltcGFjdCB0byBSdWJ5IHVzZXJzLCBkZXNwaXRlIHdoYXQgdGhlIGludGVudCBvZiB0aGUg bGFuZ3VhZ2UgaXMsIGFuZCBtYWtlIHRoZSBsYW5ndWFnZSBtb3JlIGNsZWFyIHdoZXJlIHBvc3Np YmxlLgoKR2l2ZW4gdGhhdCwgSSBoYXZlIGEgZmV3IHBvdGVudGlhbCBwcm9wb3NhbHMgZm9yIFJ1 YnkgY29tbWl0dGVycy4KCiMjIyBQcm9wb3NhbCAxOiBEbyBXaGF0IFRoZXkgTWVhbnQKCldoZW4g cGVvcGxlIHVzZSBgSGFzaC5uZXcoW10pYCB0aGV5IG1lYW4gYEhhc2gubmV3IHsgfGgsIGt8IGhb a10gPSBbXSB9YC4gQ2FuIHdlIG1ha2UgdGhhdCB0aGUgY2FzZSB0aGF0IGlmIHlvdSBwYXNzIGEg bXV0YWJsZSBvciBub24tdmFsdWUgb2JqZWN0IHRoYXQgdGhlIGJlaGF2aW9yIHdpbGwgYmUgYXMg aW50ZW5kZWQgdXNpbmcgYGR1cGAgb3Igb3RoZXIgdGVjaG5pcXVlcz8KCldoZW4gdXNlZCBpbiB0 aGUgYWJvdmUgaW5jb3JyZWN0IHdheSBpdCBpcyBsaWtlbHkgaWYgbm90IGFsd2F5cyBicm9rZW4g Y29kZS4KCiMjIyBQcm9wb3NhbCAyOiBXYXJuIEFib3V0IFVuZXhwZWN0ZWQgQmVoYXZpb3IKCkFz IG1lbnRpb25lZCBhYm92ZSwgSSBkbyBub3QgYmVsaWV2ZSB0aGVyZSBhcmUgbGVnaXRpbWF0ZSB1 c2FnZXMgb2YgYEhhc2gubmV3KFtdKWAsIGFuZCBpdCBpcyBhIGtub3duIGJ1ZyB0byBtYW55IHVz ZXJzIGFzIHRoZXkgZG8gbm90IGludGVuZCBmb3IgdGhhdCBiZWhhdmlvci4gSXQgbWF5IGJlIHdv cnRod2hpbGUgdG8gd2FybiBwZW9wbGUgaWYgdGhleSBkbyB1c2UgaXQuCgojIyMgUHJvcG9zYWwg MzogUmVxdWlyZSBGcm96ZW4gb3IgVmFsdWVzCgpUaGlzIGlzIG1vcmUgYnJlYWtpbmcgdGhhbiB0 aGUgYWJvdmUsIGJ1dCBpdCBtYXkgbWFrZSBzZW5zZSB0byByZXF1aXJlIGFueSB2YWx1ZSBwYXNz ZWQgdG8gYEhhc2gubmV3YCB0byBlaXRoZXIgYmUgYGZyb3plbmAgb3IgYSB2YWx1ZSBvYmplY3Qg KGUuZy4gYDFgIG9yIGB0cnVlYCkKCiMjIFVwZGF0aW5nIFJ1Ym9Db3AKCkZhaWxpbmcgdGhpcywg SSBhbSBjb25zaWRlcmluZyBhZHZvY2F0aW5nIGZvciBSdWJvQ29wIGFuZCBzaW1pbGFyIGxpbnRl cnMgdG8gd2FybiBwZW9wbGUgYWdhaW5zdCB0aGlzIGJlaGF2aW9yIGFzIGl0IGlzIG5vdCBpbnRl bmRlZCBpbiBtb3N0IHRvIGFsbCBjYXNlczoKCmh0dHBzOi8vZ2l0aHViLmNvbS9ydWJvY29wL3J1 Ym9jb3AvaXNzdWVzLzExMDEzCgouLi5idXQgYXMgQGlvcXVhdGl4IGhhcyBtZW50aW9uZWQgb24g dGhlIGlzc3VlIGl0IHdvdWxkIG1ha2UgbW9yZSBzZW5zZSB0byBmaXggUnVieSByYXRoZXIgdGhh biBwdXQgYSBwYXRjaCBvbiB0b3Agb2YgaXQuIEkgd291bGQgYmUgaW5jbGluZWQgdG8gYWdyZWUg d2l0aCBoaXMgYXNzZXNzbWVudCwgYW5kIHdvdWxkIHJhdGhlciBmaXggdGhpcyBhdCBhIGxhbmd1 YWdlIGxldmVsIGFzIGl0IGlzIGEga25vd24gcG9pbnQgb2YgY29uZnVzaW9uLgoKIyMgRmluYWwg VGhvdWdodHMKCkkgd291bGQgYXNrIHRoYXQgbWFpbnRhaW5lcnMgY29uc2lkZXIgdGhlIGNvbmZ1 c2lvbiB0aGF0IHRoaXMgaGFzIGNhdXNlZCBpbiB0aGUgY29tbXVuaXR5LCByYXRoZXIgdGhhbiBh c3NlcnRpbmcgdGhpcyAid29ya3MgYXMgaW50ZW5kZWQuIiBJdCBkb2VzIHdvcmsgYXMgaW50ZW5k ZWQsIGJ1dCB0aGUgaW50ZW5kZWQgZnVuY3Rpb25hbGl0eSBjYW4gbWFrZSBSdWJ5IG1vcmUgZGlm ZmljdWx0IGZvciBiZWdpbm5lcnMuIFdlIHNob3VsZCBrZWVwIHRoaXMgaW4gbWluZC4KCgoKLS0g Cmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLwoKVW5zdWJzY3JpYmU6IDxtYWlsdG86cnVieS1j b3JlLXJlcXVlc3RAcnVieS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vic2NyaWJlPgo8aHR0cDovL2xp c3RzLnJ1YnktbGFuZy5vcmcvY2dpLWJpbi9tYWlsbWFuL29wdGlvbnMvcnVieS1jb3JlPgo=