[ruby-core:109467] [Ruby master Feature#17330] Object#non
From:
"Dan0042 (Daniel DeLorme)" <noreply@...>
Date:
2022-08-10 17:48:13 UTC
List:
ruby-core #109467
SXNzdWUgIzE3MzMwIGhhcyBiZWVuIHVwZGF0ZWQgYnkgRGFuMDA0MiAoRGFuaWVsIERlTG9ybWUp LgoKCmJ5cm9vdCAoSmVhbiBCb3Vzc2llcikgd3JvdGUgaW4gI25vdGUtMTM6Cj4gSSBhbHNvIHRo aW5rIGBub3RgIHdvdWxkIGJlIGEgYmV0dGVyIG5hbWUgZm9yIGl0CgpTaW5jZSB0aGVyZSBpcyBh bHJlYWR5IGEgYG5vdGAgb3BlcmF0b3IsIEkgd291bGQgZXhwZWN0IGEgYG5vdGAgbWV0aG9kIHRv IGhhdmUgdGhlIHNhbWUgc2VtYW50aWNzIGFuZCByZXR1cm4gZWl0aGVyIHRydWUgb3IgZmFsc2Uu IFNvIHNpbmNlIHdlJ3JlIHRhbGtpbmcgYWJvdXQgYSBtZXRob2QgdGhhdCByZXR1cm5zIGBzZWxm YCBJIHByZWZlciAibm9uIi4KYDQyLm5vbnplcm8/ID09IDQyLm5vbigmOnplcm8/KWAKCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRmVhdHVyZSAjMTczMzA6IE9iamVj dCNub24KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE3MzMwI2NoYW5nZS05ODYy OAoKKiBBdXRob3I6IHp2ZXJvayAoVmljdG9yIFNoZXBlbGV2KQoqIFN0YXR1czogT3BlbgoqIFBy aW9yaXR5OiBOb3JtYWwKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoo QXMgYWx3YXlzICJ3aXRoIGNvcmUiIG1ldGhvZCBwcm9wb3NhbHMsIEkgZG9uJ3QgZXhwZWN0IHF1 aWNrIHN1Y2Nlc3MsIGJ1dCBob3BlIGZvciBhIGZydWl0ZnVsIGRpc2N1c3Npb24pCgojIyMgUmVh c29uczoKClJ1YnkgYWx3YXlzIHRyaWVkIHRvIGJlIHZlcnkgY2hhaW5hYmlsaXR5LWZyaWVuZGx5 LiBSZWNlbnRseSwgd2l0aCBpbnRyb2R1Y3Rpb24gb2YgYC50aGVuYCBhbmQgYD0+YCwgZXZlbiBt b3JlIHNvLiBCdXQgb25lIHBhdHRlcm4gdGhhdCBmcmVxdWVudGx5IGVtZXJnZXMgYW5kIGRvZXNu J3QgaGF2ZSBnb29kIGlkaW9tYXRpYyBleHByZXNzaW9uOiBjYWxjdWxhdGUgc29tZXRoaW5nLCBh bmQgaWYgaXQgaXMgbm90IGEgImdvb2QiIHZhbHVlLCByZXR1cm4gYG5pbGAgKG9yIHByb3ZpZGUg ZGVmYXVsdCB2YWx1ZSB3aXRoIGB8fGApLiBUaGVyZSBhcmUgY3VycmVudGx5IHR3byBwYXJ0aWFs IHNvbHV0aW9uczoKCjEuIGBub256ZXJvP2AgaW4gUnVieSBjb3JlIChmcmVxdWVudGx5IG1vY2tl ZCBmb3IgImluYWRlcXVhdGUiIGJlaGF2aW9yLCBhcyBpdCBpcyBsb29raW5nIGxpa2UgcHJlZGlj YXRlIG1ldGhvZCwgYnV0IGluc3RlYWQgb2YgYHRydWVgL2BmYWxzZWAgcmV0dXJucyBhbiBvcmln aW5hbCB2YWx1ZSBvciBgbmlsYCkKMi4gQWN0aXZlU3VwcG9ydCBgT2JqZWN0I3ByZXNlbmNlYCwg d2hpY2ggYWxzbyByZXR1cm5zIGFuIG9yaWdpbmFsIHZhbHVlIG9yIGBuaWxgIGlmIGl0IGlzIG5v dCAicHJlc2VudCIgKGUuZy4gYG5pbGAgb3IgYGVtcHR5P2AgaW4gQVMtc3BlYWspCgpCb3RoIG9m IHRoZW0gcHJvdmUgdGhlbXNlbHZlcyBxdWl0ZSB1c2VmdWwgaW4gc29tZSBkb21haW5zLCBidXQg dGhleSBhcmUgdGFyZ2V0aW5nIG9ubHkgdGhvc2UgcGFydGljdWxhciBkb21haW5zLCBsb29rIHVu bGlrZSBlYWNoIG90aGVyLCBhbmQgY2FuIGJlIGNvbmZ1c2luZy4KCiMjIyBQcm9wb3NhbDoKCk1l dGhvZCBgT2JqZWN0I25vbmAgKG9yIGBLZXJuZWwjbm9uYCksIHdoaWNoIHJlY2VpdmVzIGEgYmxv Y2ssIGNhbGxzIGl0IHdpdGggcmVjZWl2ZXIgYW5kIHJldHVybnMgYG5pbGAgKGlmIGJsb2NrIG1h dGNoZWQpIG9yIHJlY2VpdmVyIG90aGVyd2lzZS4KCiMjIyMjIFByb3RvdHlwZSBpbXBsZW1lbnRh dGlvbjoKCmBgYHJ1YnkKY2xhc3MgT2JqZWN0CiAgZGVmIG5vbgogICAgc2VsZiB1bmxlc3MgeWll bGQoc2VsZikKICBlbmQKZW5kCmBgYAoKIyMjIyMgVXNhZ2UgZXhhbXBsZXM6CgoxLiBXaXRoIG51 bWJlcjoKCiAgICBgYGBydWJ5CiAgICBsaW1pdCA9IGNhbGN1bGF0ZS5zb21lLmxpbWl0CiAgICBs aW1pdC56ZXJvPyA/IERFRkFVTFRfTElNSVQgOiBsaW1pdAogICAgIyBvciwgd2l0aCBub256ZXJv PwogICAgY2FsY3VsYXRlLnNvbWUubGltaXQubm9uemVybz8gfHwgREVGQVVMVF9MSU1JVAogICAg IyB3aXRoIG5vbjoKICAgIGNhbGN1bGF0ZS5zb21lLmxpbWl0Lm5vbigmOnplcm8/KSB8fCBERUZB VUxUX0xJTUlUCiAgICAjIF4gTm90ZSBoZXJlLCBob3csIHVubGlrZSBgbm9uemVybz9gLCB3ZSBz ZWUgcHJlZGljYXRlLXkgPywgYnV0IGl0IGlzIElOU0lERSB0aGUgYG5vbigpYCBhbmQgbGVzcyBj b25mdXNpbmcKICAgIGBgYAoKMi4gV2l0aCBzdHJpbmc6CgogICAgYGBgcnVieQogICAgbmFtZSA9 IHBhcmFtc1s6bmFtZV0gaWYgcGFyYW1zWzpuYW1lXSAmJiAhcGFyYW1zWzpuYW1lXS5lbXB0eT8K ICAgICMgb3IsIHdpdGggQWN0aXZlU3VwcG9ydDoKICAgIG5hbWUgPSBwYXJhbXNbOm5hbWVdLnBy ZXNlbmNlCiAgICAjIHdpdGggbm9uOgogICAgbmFtZSA9IHBhcmFtc1s6bmFtZV0mLm5vbigmOmVt cHR5PykKICAgIGBgYAoKMy4gTW9yZSBjb21wbGljYXRlZCBleGFtcGxlCgogICAgYGBgcnVieQog ICAgYWN0aW9uID0gcGF5bG9hZC5kaWcoJ2FjdGlvbicsICd0eXBlJykKICAgIHJldHVybiBpZiBQ Uk9ISUJJVEVEX0FDVElPTlMuaW5jbHVkZT8oYWN0aW9uKQogICAgc2VuZCgiZG9fI3thY3Rpb259 IikKICAgICMgd2l0aCBub24gJiB0aGVuOgogICAgcGF5bG9hZC5kaWcoJ2FjdGlvbicsICd0eXBl JykKICAgICAgLm5vbiB7IHxhY3Rpb258IFBST0hJQklURURfQUNUSU9OUy5pbmNsdWRlPyhhY3Rp b24pIH0KICAgICAgJi50aGVuIHsgfGFjdGlvbnwgc2VuZCgiZG9fI3thY3Rpb259IikgfQogICAg YGBgCgpCYXNpY2FsbHksIHRoZSBwcm9wb3NhbCBpcyBhICJjaGFpbmFibGUgZ3VhcmQgY2xhdXNl IiB0aGF0IGFsbG93cyB0byAiY2hhaW4iaWZ5IGFuZCBEUllpZnkgY29kZSBsaWtlOgoKYGBgcnVi eQp2YWx1ZSA9IGZldGNoX3NvbWV0aGluZwpyZXR1cm4gdmFsdWUgdW5sZXNzIHZhbHVlLndpdGhf cHJvYmxlbXM/CiMgd2hpY2ggdHVybnMgaW50bwpmZXRjaF9zb21ldGhpbmcubm9uKCY6d2l0aF9w cm9ibGVtcz8pCgojIG9yCnZhbHVlID0gZmV0Y2hfc29tZXRoaW5nCnZhbHVlID0gcmVhc29uYWJs ZV9kZWZhdWx0IGlmIHZhbHVlLndpdGhfcHJvYmxlbXM/CiMgdHVybnMgaW50bwp2YWx1ZSA9IGZl dGNoX3NvbWV0aGluZy5ub24oJjp3aXRoX3Byb2JsZW1zPykgfHwgcmVhc29uYWJsZV9kZWZhdWx0 CmBgYAoKSSBiZWxpZXZlIHRoYXQgdGhpcyBpZGlvbSBpcyBmcmVxdWVudCBlbm91Z2gsIGluIGNv bWJpbmF0aW9ucyBsaWtlIChhc3NvcnRlZCBleGFtcGxlcykgInJlYWQgY29uZmlnIGZpbGUgYnV0 IHJldHVybiBgbmlsYCBpZiBpdCBpcyBlbXB0eS93cm9uZyB2ZXJzaW9uIiwgImZldGNoIGxhdGVz dCBpbnZvaWNlLCBidXQgaWdub3JlIGlmIGl0IGhhcyBhbiBgdW5wYXlhYmxlYCBmbGFnIiwgImZl dGNoIGEgbGlzdCBvZiBsYXN0IHVzZXIncyBzZWFyY2hlcywgYnV0IGlmIGl0IGlzIGVtcHR5LCBw cm92aWRlIGRlZmF1bHQgc2VhcmNoIGhpbnRzIiBldGMuCgpJIGJlbGlldmUgdGhlcmUgX2lzXyB1 biB1bnJlZmxlY3RlZCBuZWVkIGZvciBpZGlvbSBsaWtlIHRoaXMsIHRoZSBuZWVkIHRoYXQgaXMg ZGVtb25zdHJhdGVkIGJ5IHRoZSBleGlzdGVuY2Ugb2YgYG5vbnplcm8/YCBhbmQgYHByZXNlbmNl YC4KCgoKLS0gCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLwoKVW5zdWJzY3JpYmU6IDxtYWls dG86cnVieS1jb3JlLXJlcXVlc3RAcnVieS1sYW5nLm9yZz9zdWJqZWN0PXVuc3Vic2NyaWJlPgo8 aHR0cDovL2xpc3RzLnJ1YnktbGFuZy5vcmcvY2dpLWJpbi9tYWlsbWFuL29wdGlvbnMvcnVieS1j b3JlPgo=