[ruby-core:105871] [Ruby master Feature#18276] `Proc#bind_call(obj)` same as `obj.instance_exec(..., &proc_obj)`
From:
"Eregon (Benoit Daloze)" <noreply@...>
Date:
2021-10-29 20:29:07 UTC
List:
ruby-core #105871
SXNzdWUgIzE4Mjc2IGhhcyBiZWVuIHVwZGF0ZWQgYnkgRXJlZ29uIChCZW5vaXQgRGFsb3plKS4K CgpJIGRvbid0IGxpa2UgdGhlIGlkZWEgdG8gYWx0ZXIgdGhlIHNlbWFudGljcyBvZiBQcm9jIG1l dGhvZHMganVzdCBmb3IgUmFjdG9yIHRob3VnaCAoYWxzbyBpdCBjb3N0cyBleHRyYSBjaGVja3Mg b24gZXZlcnkgUHJvYyNjYWxsICEpLgpUaGUgYmVzdCBhbmQgY2xlYW5lc3Qgc29sdXRpb24gaXMg SU1ITyB0byByYWlzZSBmb3IgYFJhY3Rvci5tYWtlX3NoYXJlYWJsZShzb21lUHJvYylgIGlmIHRo ZSBQcm9jIGBzZWxmYCBpcyBub3Qgc2hhcmVhYmxlLgpTZWUgaHR0cHM6Ly9idWdzLnJ1YnktbGFu Zy5vcmcvaXNzdWVzLzE4MjQzI25vdGUtNSBmb3IgbW9yZSBkZXRhaWxzIG9uIHRoYXQgaWRlYS4K ClRoZW4gYFByb2MjYmluZF9jYWxsYCBpcyBzaW1wbHkgbm90IG5lZWRlZCBmb3IgUmFjdG9yLgpJ IGRvbid0IG1pbmQgYWRkaW5nIGBQcm9jI2JpbmRfY2FsbGAgZm9yIG90aGVyIHB1cnBvc2VzIHRo b3VnaC4KQ2hhbmdpbmcgdGhlIGBzZWxmYCBpcyB0eXBpY2FsbHkgYmVzdCBhdm9pZGVkIGV4Y2Vw dCBmb3Igc29tZSBjYXNlcyBpbiBEU0xzLCBhcyBpdCBicmVha3Mgd2hhdCBtZXRob2RzIHRoZSBi bG9jayBjYW4gY2FsbCBpbiBpdHMgbGV4aWNhbCBjb250ZXh0LgoKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpGZWF0dXJlICMxODI3NjogYFByb2MjYmluZF9jYWxsKG9i ailgIHNhbWUgYXMgYG9iai5pbnN0YW5jZV9leGVjKC4uLiwgJnByb2Nfb2JqKWAKaHR0cHM6Ly9i dWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzE4Mjc2I2NoYW5nZS05NDQwOQoKKiBBdXRob3I6IGtv MSAoS29pY2hpIFNhc2FkYSkKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KYFByb2MjYmluZF9jYWxsKG9iailg IHNhbWUgYXMgYG9iai5pbnN0YW5jZV9leGVjKC4uLiwgJnByb2Nfb2JqKWAKCmBgYHJ1YnkKcHJv Y19vYmogPSBwcm9je3xwYXJhbXMuLi58IC4uLn0Kb2JqLmluc3RhbmNlX2V4ZWMocGFyYW1zLi4u LCAmcHJvY19vYmopCmBgYAoKaXMgZnJlcXVlbnQgcGF0dGVybi4KCmBgYAokIGdlbS1jb2Rlc2Vh cmNoICdpbnN0YW5jZV9leGVjLitcJicgfCB3YyAtbAo5NTU4CmBgYAoKSG93IGFib3V0IHRvIGlu dHJvZHVjZSBuZXcgbWV0aG9kIGBQcm9jI2JpbmRfY2FsbGA/CgpgYGBydWJ5CmNsYXNzIFByb2MK ICBkZWYgYmluZF9jYWxsIG9iaiwgKmFyZ3MKICAgIG9iai5pbnN0YW5jZV9leGVjKCphcmdzLCAm c2VsZikKICBlbmQKZW5kCgpwciA9IC0+eyBwIHNlbGYgfQpwci5iaW5kX2NhbGwoImhlbGxvIikg Iz0+ICJoZWxsbyIKcHIuYmluZF9jYWxsKG5pbCkgICAgICM9PiBuaWwKYGBgCgpJdCBpcyBzaW1p bGFyIHRvIGBVbmJvdW5kTWV0aG9kI2JpbmRfY2FsbGAuCgotLS0tCgpNeSBtb3RpdmF0aW9uOwoK SSB3YW50IHRvIHNvbHZlIHNoYXJlYWJsZSBQcm9jJ3MgaXNzdWUgaHR0cHM6Ly9idWdzLnJ1Ynkt bGFuZy5vcmcvaXNzdWVzLzE4MjQzIGFuZCBvbmUgaWRlYSBpcyB0byBwcm9oaWJpdCBgUHJvYyNj YWxsYCBmb3Igc2hhcmVhYmxlIFByb2MncywgYnV0IGFsbG93IGBvYmouaW5zdGFuY2VfZXhlYygm cHIpYC4gVG8gbWFrZSBzaG9ydGN1dCwgSSB3YW50IHRvIGludHJvZHVjZSBgUHJvYyNiaW5kX2Nh bGxgLgoKYFVuYm91bmRQcm9jYCBpcyBhbm90aGVyIGlkZWEsIGJ1dCBJJ20gbm90IHN1cmUgaXQg aXMgZ29vZCBpZGVhLi4uCgpBbnl3YXksIHdlIGZvdW5kIHRoYXQgdGhlcmUgYXJlIG1hbnkgdXNh Z2Ugb2YgYGluc3RhbmNlX2V4ZWMoJnByb2Nfb2JqKWAsIHNvIGBQcm9jI2JpbmRfY2FsbGAgaXMg dXNlZnVsIG5vdCBmb3IgUmFjdG9ycy4KCgoKLS0gCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3Jn LwoKVW5zdWJzY3JpYmU6IDxtYWlsdG86cnVieS1jb3JlLXJlcXVlc3RAcnVieS1sYW5nLm9yZz9z dWJqZWN0PXVuc3Vic2NyaWJlPgo8aHR0cDovL2xpc3RzLnJ1YnktbGFuZy5vcmcvY2dpLWJpbi9t YWlsbWFuL29wdGlvbnMvcnVieS1jb3JlPgo=