[#110300] [Ruby master Bug#19057] Hide implementation of `rb_io_t`. — "ioquatix (Samuel Williams)" <noreply@...>
SXNzdWUgIzE5MDU3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGlvcXVhdGl4IChTYW11ZWwgV2lsbGlh
53 messages
2022/10/15
[ruby-core:110501] [Ruby master Feature#19075] Add Array#bsearch_last and #bsearch_last_index
From:
"zverok (Victor Shepelev)" <noreply@...>
Date:
2022-10-24 15:33:56 UTC
List:
ruby-core #110501
SXNzdWUgIzE5MDc1IGhhcyBiZWVuIHVwZGF0ZWQgYnkgenZlcm9rIChWaWN0b3IgU2hlcGVsZXYp LgoKCkkgYW0gdGhpbmtpbmcgdGhhdCBtYXliZSBgcmV2ZXJzZTogdHJ1ZWAgY2FuIGJlIGEgZ29v ZCAqKmdlbmVyaWMqKiBvcHRpb24gdG8gdGhlbiBzcHJlYWQgdGhyb3VnaCBvdGhlciBtZXRob2Rz PwoKKiBgYnNlYXJjaChyZXZlcnNlOiB0cnVlKWAgKGJpbmFyeSBzZWFyY2gsIHJldmVyc2Ugb3Jk ZXIpCiogYHNvcnQocmV2ZXJzZTogdHJ1ZSlgIChzb3J0LCByZXZlcnNlIG9yZGVyKQoqIGBmaW5k X2luZGV4KHJldmVyc2U6IHRydWUpYCAoZmluZCBsYXN0IGluZGV4ID0gZmluZCBpbmRleCwgc2Vh cmNoIGluIHJldmVyc2Ugb3JkZXIpCgpldGM/Li4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KRmVhdHVyZSAjMTkwNzU6IEFkZCBBcnJheSNic2VhcmNoX2xhc3QgYW5k ICNic2VhcmNoX2xhc3RfaW5kZXgKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE5 MDc1I2NoYW5nZS05OTgyNAoKKiBBdXRob3I6IGt5YW5hZ2kgKEtvdWhlaSBZYW5hZ2l0YSkKKiBT dGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KUFI6IGh0dHBzOi8vZ2l0aHViLmNvbS9ydWJ5L3J1YnkvcHVsbC82NjEx CgooSSdtIGdvaW5nIHRvIHRhbGsgYWJvdXQgYEFycmF5YCBoZXJlLCBidXQgdGhlIHNhbWUgYXJn dW1lbnQgY2FuIGJlIG1hZGUgZm9yIGBSYW5nZWAuIElmIGBBcnJheSNic2VhcmNoX2xhc3RgIGlz IGFjY2VwdGFibGUsIEkgd2lsbCB3b3JrIGFsc28gZm9yIGBSYW5nZWAuKQoKUnVieSdzIGJzZWFy Y2ggcmV0dXJucyB0aGUgZmlyc3QgZWxlbWVudCB3aGljaCBzYXRpc2ZpZXMgdGhlIGdpdmVuIGJs b2NrLgoKYGBgcnVieQojIFNlYXJjaCB0aGUgZmlyc3QgZWxlbWVudCBncmVhdGVyIHRoYW4gMTgK YXJyYXkgPSBbMTAsIDE1LCAyMCwgMjVdCmFycmF5LmJzZWFyY2ggeyB8eHwgeCA+IDE4IH0gIyA9 PiAyMApgYGAKCklmIHdlIHdhbnQgdGhlIGxhc3QgZWxlbWVudCwgd2UgbmVlZCB0byBpbnZlcnQg dGhlIGNvbmRpdGlvbiBhbmQgc3RlcCBiYWNrd2FyZC4KCmBgYHJ1YnkKIyBTZWFyY2ggdGhlIGxh c3QgZWxlbWVudCBsZXNzIHRoYW4gMTgKYXJyYXkgPSBbMTAsIDE1LCAyMCwgMjVdCmluZGV4ID0g YXJyYXkuYnNlYXJjaF9pbmRleCB7IHx4fCAhKHggPCAxOCkgfQphcnJheVtpbmRleC0xXSAjID0+ IDE1CmBgYAoKT2YgY291cnNlLCB3ZSBuZWVkIHRvIGNvbnNpZGVyIGBuaWxgIGFuZCB0aGUgYm91 bmRhcnkuCgpgYGBydWJ5CiMgU2VhcmNoIHRoZSBsYXN0IGVsZW1lbnQgbGVzcyB0aGFuIDEwMApp bmRleCA9IGFycmF5LmJzZWFyY2hfaW5kZXggeyB8eHwgISh4IDwgMTAwKSB9ICMgPT4gbmlsCmlm IGluZGV4Lm5pbD8KICBhcnJheS5sYXN0ICMgPT4gMjUKZWxzZQogIGFycmF5W2luZGV4LTFdCmVu ZApgYGAKCmBgYHJ1YnkKIyBTZWFyY2ggdGhlIGxhc3QgZWxlbWVudCBsZXNzIHRoYW4gMAppbmRl eCA9IGFycmF5LmJzZWFyY2hfaW5kZXggeyB8eHwgISh4IDwgMCkgfSAjID0+IDAKaWYgaW5kZXgu bmlsPwogIGFycmF5Lmxhc3QKZWxzaWYgaW5kZXggPT0gMAogIG5pbAplbHNlCiAgYXJyYXlbaW5k ZXgtMV0KZW5kCmBgYAoKVGhpcyBpcyB3aGVyZSBtaXN0YWtlcyBjYW4gZWFzaWx5IGJlIG1hZGUs IHNvIEkgcHJvcG9zZSBgQXJyYXkjYnNlYXJjaF9sYXN0YCBhbmQgYEFycmF5I2JzZWFyY2hfbGFz dF9pbmRleGAuCgpgQXJyYXkjYnNlYXJjaF9sYXN0YCByZXR1cm5zIHRoZSBsYXN0IGVsZW1lbnQg d2hpY2ggc2F0aXNmaWVzIHRoZSBnaXZlbiBibG9jay4KCmBBcnJheSNic2VhcmNoYCByZXF1aXJl cyB0aGF0IGFsbCBmYWxzZS1ldmFsdWF0aW5nIGVsZW1lbnRzIHByZWNlZGUgYWxsIHRydWUtZXZh bHVhdGluZyBlbGVtZW50cy4gQXMgaXMgY2xlYXIgZnJvbSB0aGUgbWVhbmluZyBvZiB0aGUgbWV0 aG9kLCBjb252ZXJzZWx5IHRvIGBic2VhcmNoYCwgYGJzZWFyY2hfbGFzdGAgcmVxdWlyZXMgdGhh dCBhbGwgdHJ1ZS1ldmFsdWF0aW5nIGVsZW1lbnRzIHByZWNlZGUgYWxsIGZhbHNlLWV2YWx1YXRp bmcgZWxlbWVudHMuIChJZiBgYnNlYXJjaF9sYXN0YCBpcyBhY2NlcHRhYmxlLCB0aGUgbmFtZSAi ZmluZC1taW5pbXVtIG1vZGUiIHNob3VsZCBiZSBjaGFuZ2VkLikKCmBgYHJ1YnkKYXJyYXkgPSBb MTAsIDE1LCAyMCwgMjVdCmFycmF5LmJzZWFyY2hfbGFzdCB7IHx4fCB4IDwgMTggfSAgIyA9PiAx NQphcnJheS5ic2VhcmNoX2xhc3QgeyB8eHwgeCA8IDEwMCB9ICMgPT4gMjUKYXJyYXkuYnNlYXJj aF9sYXN0IHsgfHh8IHggPCAwIH0gICAjID0+IG5pbApgYGAKClRoZXJlIGFyZSBzZXZlcmFsIHBv c3NpYmxlIG9wdGlvbnMgZm9yIGZpbmQtYW55IG1vZGUuCgooMSkgYGJzZWFyY2hfbGFzdGAgZG9l cyBub3Qgc3VwcG9ydCBmaW5kLWFueSBtb2RlLgoKQSBibG9jayBmb3IgYGJzZWFyY2hfbGFzdGAg bXVzdCByZXR1cm4gYHRydWVgLCBgZmFsc2VgIG9yIGBuaWxgLgoKYGBgClsxLCAyLCAzXS5ic2Vh cmNoX2xhc3QgeyAwIH0gIyA9PiBUeXBlRXJyb3IKYGBgCgpNeSBwdWxsIHJlcXVlc3QgdGVudGF0 aXZlbHkgaW5jbHVkZXMgdGhpcyBpbXBsZW1lbnRhdGlvbi4KCigyKSBgYnNlYXJjaF9sYXN0YCBz dXBwb3J0cyBmaW5kLWFueSBtb2RlIGFuZCBpdCBiZWhhdmVzIGxpa2UgYGJzZWFyY2hgLgoKYGJz ZWFyY2hgIHdpdGggZmluZC1hbnkgbW9kZSByZXR1cm5zIGFuIGVsZW1lbnQsIGZvciB3aGljaCB0 aGUgYmxvY2sgcmV0dXJucyB6ZXJvLgpJZiBtdWx0aXBsZSBlbGVtZW50cyBzYXRpc2Z5IHRoZSBj b25kaXRpb24sIGl0IGlzIG5vdCBkZXRlcm1pbmVkIHdoaWNoIG9mIHRoZW0gd2lsbCBiZSByZXR1 cm5lZC4KCkl0IGlzIGNvbmNlaXZhYmxlIHRoYXQgYGJzZWFyY2hfbGFzdGAgYmVoYXZlcyBpbiB0 aGUgc2FtZSB3YXkgYXMgYGJzZWFyY2hgLgoKYGBgCiMgY3VycmVudCBiZWhhdmlvcgojIEl0IGlz IG5vdCBzcGVjaWZpZWQgd2hldGhlciBgOmJgLCBgOmNgLCBvciBgOmRgIGlzIHJldHVybmVkLgpb WzEsOmFdLCBbMiwgOmJdLCBbMiwgOmNdLCBbMiwgOmRdLCBbMywgOmVdXS5ic2VhcmNoIHsgfGEs IGJ8IDIgPD0+IGEgfSAjID0+IFsyLCA6Y10KYGBgCgooMykgYGJzZWFyY2hfbGFzdGAgc3VwcG9y dHMgZmluZC1hbnkgbW9kZSBhbmQgcmV0dXJucyB0aGUgbGFzdCBlbGVtZW50LiBNYWtlIGBic2Vh cmNoYCByZXR1cm4gdGhlIGZpcnN0IGVsZW1lbnQuCgpDaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGBi c2VhcmNoYCB0byByZXR1cm4gdGhlIGZpcnN0IGVsZW1lbnQgZm9yIHdoaWNoIHRoZSBibG9jayBy ZXR1cm5zIHplcm8uCmBic2VhcmNoX2xhc3RgIHJldHVybnMgdGhlIGxhc3QgZWxlbWVudCBmb3Ig d2hpY2ggdGhlIGJsb2NrIHJldHVybnMgemVyby4KCmBgYAojIENoYW5nZSBpdCBsaWtlIHRoaXM6 CltbMSw6YV0sIFsyLCA6Yl0sIFsyLCA6Y10sIFsyLCA6ZF0sIFszLCA6ZV1dLmJzZWFyY2ggeyB8 YSwgYnwgMiA8PT4gYSB9ICMgPT4gWzIsIDpiXQpbWzEsOmFdLCBbMiwgOmJdLCBbMiwgOmNdLCBb MiwgOmRdLCBbMywgOmVdXS5ic2VhcmNoX2xhc3QgeyB8YSwgYnwgMiA8PT4gYSB9ICMgPT4gWzIs IDpkXQpgYGAKCihJZiB0aGlzIG9wdGlvbiBpcyBhZG9wdGVkLCB0aGUgbmFtZSAiZmluZC1hbnkg bW9kZSIgc2hvdWxkIGJlIHJlbmFtZWQuKQoKCgoKLS0gCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcu b3JnLwoKVW5zdWJzY3JpYmU6IDxtYWlsdG86cnVieS1jb3JlLXJlcXVlc3RAcnVieS1sYW5nLm9y Zz9zdWJqZWN0PXVuc3Vic2NyaWJlPgo8aHR0cDovL2xpc3RzLnJ1YnktbGFuZy5vcmcvY2dpLWJp bi9tYWlsbWFuL29wdGlvbnMvcnVieS1jb3JlPgo=