[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110476] [Ruby master Feature#19075] Add Array#bsearch_last and #bsearch_last_index
From:
"kyanagi (Kouhei Yanagita)" <noreply@...>
Date:
2022-10-22 08:55:19 UTC
List:
ruby-core #110476
SXNzdWUgIzE5MDc1IGhhcyBiZWVuIHVwZGF0ZWQgYnkga3lhbmFnaSAoS291aGVpIFlhbmFnaXRh KS4KCgpJIHdhcyBvbmx5IHRoaW5raW5nIG9mIGFkZGluZyBhIG5ldyBtZXRob2QsIGJ1dCBhbiBv cHRpb25hbCBhcmd1bWVudCBmb3IgYGJzZWFyY2hgIGFsc28gc2VlbXMgdG8gYmUgZ29vZC4KVGhl IG5hbWUgb2YgdGhlIGFyZ3VtZW50IHdvdWxkIGJlIGFzIGZvbGxvd3M/CgpgYGBydWJ5CmJzZWFy Y2godGFyZ2V0OiA6Zmlyc3QpCmJzZWFyY2godGFyZ2V0OiA6bGFzdCkKYGBgCgoKLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpGZWF0dXJlICMxOTA3NTogQWRkIEFycmF5 I2JzZWFyY2hfbGFzdCBhbmQgI2JzZWFyY2hfbGFzdF9pbmRleApodHRwczovL2J1Z3MucnVieS1s YW5nLm9yZy9pc3N1ZXMvMTkwNzUjY2hhbmdlLTk5Nzk0CgoqIEF1dGhvcjoga3lhbmFnaSAoS291 aGVpIFlhbmFnaXRhKQoqIFN0YXR1czogT3BlbgoqIFByaW9yaXR5OiBOb3JtYWwKLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpQUjogaHR0cHM6Ly9naXRodWIuY29tL3J1 YnkvcnVieS9wdWxsLzY2MTEKCihJJ20gZ29pbmcgdG8gdGFsayBhYm91dCBgQXJyYXlgIGhlcmUs IGJ1dCB0aGUgc2FtZSBhcmd1bWVudCBjYW4gYmUgbWFkZSBmb3IgYFJhbmdlYC4gSWYgYEFycmF5 I2JzZWFyY2hfbGFzdGAgaXMgYWNjZXB0YWJsZSwgSSB3aWxsIHdvcmsgYWxzbyBmb3IgYFJhbmdl YC4pCgpSdWJ5J3MgYnNlYXJjaCByZXR1cm5zIHRoZSBmaXJzdCBlbGVtZW50IHdoaWNoIHNhdGlz ZmllcyB0aGUgZ2l2ZW4gYmxvY2suCgpgYGBydWJ5CiMgU2VhcmNoIHRoZSBmaXJzdCBlbGVtZW50 IGdyZWF0ZXIgdGhhbiAxOAphcnJheSA9IFsxMCwgMTUsIDIwLCAyNV0KYXJyYXkuYnNlYXJjaCB7 IHx4fCB4ID4gMTggfSAjID0+IDIwCmBgYAoKSWYgd2Ugd2FudCB0aGUgbGFzdCBlbGVtZW50LCB3 ZSBuZWVkIHRvIGludmVydCB0aGUgY29uZGl0aW9uIGFuZCBzdGVwIGJhY2t3YXJkLgoKYGBgcnVi eQojIFNlYXJjaCB0aGUgbGFzdCBlbGVtZW50IGxlc3MgdGhhbiAxOAphcnJheSA9IFsxMCwgMTUs IDIwLCAyNV0KaW5kZXggPSBhcnJheS5ic2VhcmNoX2luZGV4IHsgfHh8ICEoeCA8IDE4KSB9CmFy cmF5W2luZGV4LTFdICMgPT4gMTUKYGBgCgpPZiBjb3Vyc2UsIHdlIG5lZWQgdG8gY29uc2lkZXIg YG5pbGAgYW5kIHRoZSBib3VuZGFyeS4KCmBgYHJ1YnkKIyBTZWFyY2ggdGhlIGxhc3QgZWxlbWVu dCBsZXNzIHRoYW4gMTAwCmluZGV4ID0gYXJyYXkuYnNlYXJjaF9pbmRleCB7IHx4fCAhKHggPCAx MDApIH0gIyA9PiBuaWwKaWYgaW5kZXgubmlsPwogIGFycmF5Lmxhc3QgIyA9PiAyNQplbHNlCiAg YXJyYXlbaW5kZXgtMV0KZW5kCmBgYAoKYGBgcnVieQojIFNlYXJjaCB0aGUgbGFzdCBlbGVtZW50 IGxlc3MgdGhhbiAwCmluZGV4ID0gYXJyYXkuYnNlYXJjaF9pbmRleCB7IHx4fCAhKHggPCAwKSB9 ICMgPT4gMAppZiBpbmRleC5uaWw/CiAgYXJyYXkubGFzdAplbHNpZiBpbmRleCA9PSAwCiAgbmls CmVsc2UKICBhcnJheVtpbmRleC0xXQplbmQKYGBgCgpUaGlzIGlzIHdoZXJlIG1pc3Rha2VzIGNh biBlYXNpbHkgYmUgbWFkZSwgc28gSSBwcm9wb3NlIGBBcnJheSNic2VhcmNoX2xhc3RgIGFuZCBg QXJyYXkjYnNlYXJjaF9sYXN0X2luZGV4YC4KCmBBcnJheSNic2VhcmNoX2xhc3RgIHJldHVybnMg dGhlIGxhc3QgZWxlbWVudCB3aGljaCBzYXRpc2ZpZXMgdGhlIGdpdmVuIGJsb2NrLgoKYEFycmF5 I2JzZWFyY2hgIHJlcXVpcmVzIHRoYXQgYWxsIGZhbHNlLWV2YWx1YXRpbmcgZWxlbWVudHMgcHJl Y2VkZSBhbGwgdHJ1ZS1ldmFsdWF0aW5nIGVsZW1lbnRzLiBBcyBpcyBjbGVhciBmcm9tIHRoZSBt ZWFuaW5nIG9mIHRoZSBtZXRob2QsIGNvbnZlcnNlbHkgdG8gYGJzZWFyY2hgLCBgYnNlYXJjaF9s YXN0YCByZXF1aXJlcyB0aGF0IGFsbCB0cnVlLWV2YWx1YXRpbmcgZWxlbWVudHMgcHJlY2VkZSBh bGwgZmFsc2UtZXZhbHVhdGluZyBlbGVtZW50cy4gKElmIGBic2VhcmNoX2xhc3RgIGlzIGFjY2Vw dGFibGUsIHRoZSBuYW1lICJmaW5kLW1pbmltdW0gbW9kZSIgc2hvdWxkIGJlIGNoYW5nZWQuKQoK YGBgcnVieQphcnJheSA9IFsxMCwgMTUsIDIwLCAyNV0KYXJyYXkuYnNlYXJjaF9sYXN0IHsgfHh8 IHggPCAxOCB9ICAjID0+IDE1CmFycmF5LmJzZWFyY2hfbGFzdCB7IHx4fCB4IDwgMTAwIH0gIyA9 PiAyNQphcnJheS5ic2VhcmNoX2xhc3QgeyB8eHwgeCA8IDAgfSAgICMgPT4gbmlsCmBgYAoKVGhl cmUgYXJlIHNldmVyYWwgcG9zc2libGUgb3B0aW9ucyBmb3IgZmluZC1hbnkgbW9kZS4KCigxKSBg YnNlYXJjaF9sYXN0YCBkb2VzIG5vdCBzdXBwb3J0IGZpbmQtYW55IG1vZGUuCgpBIGJsb2NrIGZv ciBgYnNlYXJjaF9sYXN0YCBtdXN0IHJldHVybiBgdHJ1ZWAsIGBmYWxzZWAgb3IgYG5pbGAuCgpg YGAKWzEsIDIsIDNdLmJzZWFyY2hfbGFzdCB7IDAgfSAjID0+IFR5cGVFcnJvcgpgYGAKCk15IHB1 bGwgcmVxdWVzdCB0ZW50YXRpdmVseSBpbmNsdWRlcyB0aGlzIGltcGxlbWVudGF0aW9uLgoKKDIp IGBic2VhcmNoX2xhc3RgIHN1cHBvcnRzIGZpbmQtYW55IG1vZGUgYW5kIGl0IGJlaGF2ZXMgbGlr ZSBgYnNlYXJjaGAuCgpgYnNlYXJjaGAgd2l0aCBmaW5kLWFueSBtb2RlIHJldHVybnMgYW4gZWxl bWVudCwgZm9yIHdoaWNoIHRoZSBibG9jayByZXR1cm5zIHplcm8uCklmIG11bHRpcGxlIGVsZW1l bnRzIHNhdGlzZnkgdGhlIGNvbmRpdGlvbiwgaXQgaXMgbm90IGRldGVybWluZWQgd2hpY2ggb2Yg dGhlbSB3aWxsIGJlIHJldHVybmVkLgoKSXQgaXMgY29uY2VpdmFibGUgdGhhdCBgYnNlYXJjaF9s YXN0YCBiZWhhdmVzIGluIHRoZSBzYW1lIHdheSBhcyBgYnNlYXJjaGAuCgpgYGAKIyBjdXJyZW50 IGJlaGF2aW9yCiMgSXQgaXMgbm90IHNwZWNpZmllZCB3aGV0aGVyIGA6YmAsIGA6Y2AsIG9yIGA6 ZGAgaXMgcmV0dXJuZWQuCltbMSw6YV0sIFsyLCA6Yl0sIFsyLCA6Y10sIFsyLCA6ZF0sIFszLCA6 ZV1dLmJzZWFyY2ggeyB8YSwgYnwgMiA8PT4gYSB9ICMgPT4gWzIsIDpjXQpgYGAKCigzKSBgYnNl YXJjaF9sYXN0YCBzdXBwb3J0cyBmaW5kLWFueSBtb2RlIGFuZCByZXR1cm5zIHRoZSBsYXN0IGVs ZW1lbnQuIE1ha2UgYGJzZWFyY2hgIHJldHVybiB0aGUgZmlyc3QgZWxlbWVudC4KCkNoYW5nZSB0 aGUgYmVoYXZpb3Igb2YgYGJzZWFyY2hgIHRvIHJldHVybiB0aGUgZmlyc3QgZWxlbWVudCBmb3Ig d2hpY2ggdGhlIGJsb2NrIHJldHVybnMgemVyby4KYGJzZWFyY2hfbGFzdGAgcmV0dXJucyB0aGUg bGFzdCBlbGVtZW50IGZvciB3aGljaCB0aGUgYmxvY2sgcmV0dXJucyB6ZXJvLgoKYGBgCiMgQ2hh bmdlIGl0IGxpa2UgdGhpczoKW1sxLDphXSwgWzIsIDpiXSwgWzIsIDpjXSwgWzIsIDpkXSwgWzMs IDplXV0uYnNlYXJjaCB7IHxhLCBifCAyIDw9PiBhIH0gIyA9PiBbMiwgOmJdCltbMSw6YV0sIFsy LCA6Yl0sIFsyLCA6Y10sIFsyLCA6ZF0sIFszLCA6ZV1dLmJzZWFyY2hfbGFzdCB7IHxhLCBifCAy IDw9PiBhIH0gIyA9PiBbMiwgOmRdCmBgYAoKKElmIHRoaXMgb3B0aW9uIGlzIGFkb3B0ZWQsIHRo ZSBuYW1lICJmaW5kLWFueSBtb2RlIiBzaG91bGQgYmUgcmVuYW1lZC4pCgoKCgotLSAKaHR0cHM6 Ly9idWdzLnJ1YnktbGFuZy5vcmcvCgpVbnN1YnNjcmliZTogPG1haWx0bzpydWJ5LWNvcmUtcmVx dWVzdEBydWJ5LWxhbmcub3JnP3N1YmplY3Q9dW5zdWJzY3JpYmU+CjxodHRwOi8vbGlzdHMucnVi eS1sYW5nLm9yZy9jZ2ktYmluL21haWxtYW4vb3B0aW9ucy9ydWJ5LWNvcmU+Cg==