From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-3.5 required=3.0 tests=AWL,BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_PASS,UNPARSEABLE_RELAY,URIBL_GREY shortcircuit=no autolearn=no autolearn_force=no version=3.4.2 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id DFCA11F953 for ; Sat, 11 Dec 2021 18:53:48 +0000 (UTC) Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 45614120B26; Sun, 12 Dec 2021 03:53:44 +0900 (JST) Received: from xtrwkhkc.outbound-mail.sendgrid.net (xtrwkhkc.outbound-mail.sendgrid.net [167.89.16.28]) by neon.ruby-lang.org (Postfix) with ESMTPS id CFC6C120B23 for ; Sun, 12 Dec 2021 03:53:41 +0900 (JST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sendgrid.me; h=from:references:subject:mime-version:content-type: content-transfer-encoding:list-id:to; s=smtpapi; bh=AEvHcWpp6oulueUPK2BCEZHZMv5yTPCYPMkqI85YuMQ=; b=W92HsmEEu5ouz8Vfy2hs8dVBWRVtMtG9Mq2Loc+b6+aOir487gURcuzzAC7u0flWeEdU G+AAIPSdZeR03lLSPnH6gb41ZNUFmY4aR8XUNr2l/QGX+bRv3SlbMqWOv1ytsg9NOtBe5l 5bS41JOFo/wu0X/p3JRULXqeNE3SM+m20= Received: by filterdrecv-64fcb979b9-x2652 with SMTP id filterdrecv-64fcb979b9-x2652-1-61B4F3AF-5 2021-12-11 18:53:35.244722644 +0000 UTC m=+7671407.929050190 Received: from herokuapp.com (unknown) by ismtpd0179p1mdw1.sendgrid.net (SG) with ESMTP id xql5_wNPTyerVqEEkrs0Nw for ; Sat, 11 Dec 2021 18:53:35.174 +0000 (UTC) Date: Sat, 11 Dec 2021 18:53:35 +0000 (UTC) From: "jeremyevans0 (Jeremy Evans)" Message-ID: References: Mime-Version: 1.0 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Feature X-Redmine-Issue-Id: 16663 X-Redmine-Issue-Author: headius X-Redmine-Sender: jeremyevans0 X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-Redmine-MailingListIntegration-Message-Ids: 82882 X-SG-EID: =?us-ascii?Q?zy3UxWTRryXcrjCh7SV39ZkShJ1PHkEOmoUEekBgd8G8RAJk=2FsUOlbLwuWEoNU?= =?us-ascii?Q?BxG3BBFmcsr21OPpQwa7zNRSwswJm1szgMd841w?= =?us-ascii?Q?HPqc4N=2FB2leONHXyb+YsARM4CMGRcg4GiE7JUyr?= =?us-ascii?Q?yx=2FtK46tqiCMo4hkFD+mh0y2zM59AfEjvq+Hg7G?= =?us-ascii?Q?P4scNKQ8NsfU7qpd=2F7Ft1Lp94+nqNgkIxMOhJwL?= =?us-ascii?Q?GKip+=2FHnhodMHJsPJO1wLRocvAalOcryB4bzUos?= =?us-ascii?Q?xqcSx1hGN+3hisJ=2FLNwbw=3D=3D?= To: ruby-core@ruby-lang.org X-Entity-ID: b/2+PoftWZ6GuOu3b0IycA== X-ML-Name: ruby-core X-Mail-Count: 106622 Subject: [ruby-core:106622] [Ruby master Feature#16663] Add block or filtered forms of Kernel#caller to allow early bail-out X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Reply-To: Ruby developers Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzE2NjYzIGhhcyBiZWVuIHVwZGF0ZWQgYnkgamVyZW15ZXZhbnMwIChKZXJlbXkgRXZh bnMpLgoKCmhlYWRpdXMgKENoYXJsZXMgTnV0dGVyKSB3cm90ZSBpbiAjbm90ZS0xMzoKPiBJIHdv dWxkIGxpa2UgdG8gc2VlIHRoaXMgZmVhdHVyZSBoYXBwZW4gaW4gc29tZSB3YXksIGJ1dCBtb3N0 IG9mIHRoZSB1c2UgY2FzZXMgSSBjb25zaWRlcmVkIHdpbGwgd2FudCB0byBwcm9jZXNzIGFuZCBr ZWVwIHRoZSB0b3AgWCBmcmFtZXMsIHdoZXJlIFggaXMgdmFyaWFibGUgYXQgcnVudGltZSBkZXBl bmRpbmcgb24gd2hhdCB3YXMgY2FsbGVkIChleGFtcGxlOiB0ZXN0cyBhbmQgc3BlY3MgdGhhdCB0 cmltIG91ciB0aGVpciBvd24gaW50ZXJuYWxzIGFuZCBzaG9ydGVuIHRoZSBjYWxsIHN0YWNrOyB0 aGV5IGRvIG5vdCBrbm93IGhvdyBtYW55IGZyYW1lcyB0byBza2lwIHNvIHRoZXkgcmVxdWVzdCBh bGwgb2YgdGhlbSBqdXN0IHRvIHVsdGltYXRlbHkga2VlcCBOIDwgYWxsKS4KClRoaXMgbWFrZXMg aXQgc291bmQgbGlrZSB5b3UgZmF2b3IgYGVhY2hfY2FsbGVyYCAoaXRlcmF0aW9uKSBvdmVyIGBm aW5kX2NhbGxlcmAgKHNlYXJjaCkuICBDYW4geW91IHBsZWFzZSBjb25maXJtIHdoaWNoIHlvdSBw cmVmZXI/ICBJIHRoaW5rIHRoZSBleHBlY3RhdGlvbiBpcyB0aGF0IGBmaW5kX2NhbGxlcmAgd291 bGQgcmV0dXJuIGZpcnN0IHN0cmluZy9sb2NhdGlvbiB3aGVyZSBibG9jayByZXR1cm5zIHRydXRo eSwgYW5kIGBlYWNoX2NhbGxlcmAgd291bGQgcmV0dXJuIG5pbC4KIAo+IEFzIGl0IHN0YW5kcyB0 b2RheSwgdGhlIG9ubHkgd2F5IHRvIHRyaW0gc3RhY2sgZnJhbWVzIGRvd24gdG8gc29tZSBzZWFy Y2gtYmFzZWQgZGVwdGggaXMgdG8gZ2V0IHRoZW0gYWxsIGFuZCBjcm9wIGl0IGFmdGVyIHRoZSBm YWN0LgoKWWVzLiAgVGhhdCdzIHdoeSBJIHRoaW5rIHRoaXMgZmVhdHVyZSB3b3VsZCBiZSB1c2Vm dWwuICBXZSBqdXN0IG5lZWQgdG8gYWdyZWUgb24gdGhlIG1ldGhvZCBuYW1lLCBsb2NhdGlvbiwg YW5kIHNlbWFudGljcy4gIAoKPiBUaGlzIGlzbid0IHF1aXRlIGNvcnJlY3QuIFdlIGNhbiByZXR1 cm4gYSBzdGFjayB0cmFjZSBnZW5lcmF0b3IgdGhhdCBhY3RzIGxpa2UgYW4gRW51bWVyYWJsZS4K CkknbSBub3Qgc3VyZSB0aGlzIGlzIHRydWUgaW4gQ1J1YnksIHNpbmNlIHdlIG5lZWQgdG8gd2Fs ayB0aGUgVk0gZnJhbWUgc3RhY2sgYXQgdGhlIHBvaW50IG9mIGNhbGwuICBJIGRvbid0IHRoaW5r IENSdWJ5IGNhbiBzdXBwb3J0IHNvbWV0aGluZyBsaWtlIHRoZSBmb2xsb3dpbmcsIHVubGVzcyB3 ZSBtYWtlIGZhaXJseSBkcmFzdGljIGNoYW5nZXM6CgpgYGBydWJ5CmRlZiBmb28KICBlYWNoX2Nh bGxlciAjIHJldHVybnMgRW51bWVyYXRvcgplbmQKCmRlZiBiYXIKICBmb28KZW5kCgpiYXIuZWFj aHt8ZnJhbWV8fSAjIGl0ZXJhdGVzCmBgYAoKVGhpcyBpcyBiZWNhdXNlIHdoZW4gYGVhY2hgIGlz IGNhbGxlZCwgd2UndmUgYWxyZWFkeSBsb3N0IHRoZSBmaXJzdCBmZXcgZnJhbWVzIG9mIHRoZSBz dGFjayAodGhlIGNhbGxzIHRvIGBjYWxsZXJgLCBgZm9vYCwgYW5kIGBiYXJgKS4KCkBoZWFkaXVz IGluIG9yZGVyIHRvIG1vdmUgZm9yd2FyZCBvbiB0aGlzLCB3ZSBuZWVkIHRvIGFuc3dlciBNYXR6 J3MgdHdvIHF1ZXN0aW9uczoKCm1hdHogKFl1a2loaXJvIE1hdHN1bW90bykgd3JvdGUgaW4gI25v dGUtMTA6Cj4gKiBpdGVyYXRpb24gb3Igc2VhcmNoCj4gKiBwbGFjZSBhbmQgbmFtZSBvZiB0aGUg bWV0aG9kCgpJdCBzb3VuZHMgbGlrZSB5b3Ugd2FudCBpdGVyYXRpb24sIGFuZCB5b3UgYXJlIHJl Y29tbWVuZGluZyB3aXRoIGBUaHJlYWQuZWFjaF9iYWNrdHJhY2VgIHlpZWxkaW5nIGBUaHJlYWQ6 OkJhY2t0cmFjZTo6TG9jYXRpb25gIG9iamVjdHMuICBJcyB0aGF0IGNvcnJlY3Q/IFdoaWxlIHlv dXIgRW51bWVyYWJsZSBleGFtcGxlIHdvdWxkIG5vdCB3b3JrIGluIENSdWJ5LCB5b3UgbWF5IGJl IGFibGUgdG8gZG86CgpgYGBydWJ5CmFycmF5ID0gW10KVGhyZWFkLmVhY2hfYmFja3RyYWNlIGRv IHxmcmFtZXwKICBpZiB0ZXN0X2xpYnJhcnlfZnJhbWU/KGZyYW1lKQogICAgYnJlYWsgYXJyYXkg dW5sZXNzIGFycmF5LmVtcHR5PwogIGVsc2UKICAgIGFycmF5IDw8IGZyYW1lCiAgZW5kCmVuZApg YGAKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRmVhdHVyZSAjMTY2 NjM6IEFkZCBibG9jayBvciBmaWx0ZXJlZCBmb3JtcyBvZiBLZXJuZWwjY2FsbGVyIHRvIGFsbG93 IGVhcmx5IGJhaWwtb3V0Cmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xNjY2MyNj aGFuZ2UtOTUyOTAKCiogQXV0aG9yOiBoZWFkaXVzIChDaGFybGVzIE51dHRlcikKKiBTdGF0dXM6 IE9wZW4KKiBQcmlvcml0eTogTm9ybWFsCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KVGhlcmUgYXJlIG1hbnkgbGlicmFyaWVzIHRoYXQgdXNlIGBjYWxsZXJgIG9yIGBj YWxsZXJfbG9jYXRpb25zYCB0byBnYXRoZXIgc3RhY2sgaW5mb3JtYXRpb24gZm9yIGxvZ2dpbmcg b3IgaW5zdHJ1bWVudGF0aW9uLiBUaGVzZSBtZXRob2RzIGdlbmVyYXRlIGFuIGFycmF5IG9mIGlu Zm9ybWF0aW9uYWwgc3RhY2sgZnJhbWVzIGJhc2VkIG9uIHRoZSBjdXJyZW50IGNhbGwgc3RhY2su CgpCb3RoIG1ldGhvZHMgYWNjZXB0IHBhcmFtZXRlcnMgZm9yIGBsZXZlbGAgKHNraXAgc29tZSBu dW1iZXIgb2YgUnVieSBmcmFtZXMpIGFuZCBgbGVuZ3RoYCAob25seSByZXR1cm4gdGhpcyBtYW55 IGZyYW1lcykuIEhvd2V2ZXIgbWFueSB1c2UgY2FzZXMgYXJlIHVuYWJsZSB0byBwcm92aWRlIG9u ZSBvciBib3RoIG9mIHRoZXNlLgoKSW5zdHJ1bWVudGF0aW9uIHVzZXMsIGZvciBleGFtcGxlLCBt YXkgbmVlZCB0byBza2lwIGFuIHVua25vd24gbnVtYmVyIG9mIGZyYW1lcyBhdCB0aGUgdG9wIG9m IHRoZSB0cmFjZSwgc3VjaCBhcyB0byBkaWcgb3V0IG9mIHJzcGVjIHBsdW1iaW5nIG9yIGFjdGl2 ZV9yZWNvcmQgaW50ZXJuYWxzIGFuZCByZXBvcnQgdGhlIGZpcnN0IGxpbmUgb2YgdXNlciBjb2Rl LiBJbiBzdWNoIGNhc2VzLCB0aGUgdHlwaWNhbCBwYXR0ZXJuIGlzIHRvIHNpbXBseSByZXF1ZXN0 ICphbGwqIGZyYW1lcyBhbmQgdGhlbiBmaWx0ZXIgb3V0IHRoZSBvbmUgdGhhdCBpcyBkZXNpcmVk LgoKVGhpcyBsZWFkcyB0byBhIGdyZWF0IGRlYWwgb2Ygd2FzdGVkIHdvcmsgZ2F0aGVyaW5nIHRo b3NlIGZyYW1lcyBhbmQgY29uc3RydWN0aW5nIG9iamVjdHMgdG8gY2FycnkgdGhlbSB0byB0aGUg dXNlci4gT24gb3B0aW1pemluZyBydW50aW1lcyBsaWtlIEpSdWJ5IGFuZCBUcnVmZmxlUnVieSwg aXQgY2FuIGhhdmUgYSB0cmVtZW5kb3VzIGltcGFjdCBvbiBwZXJmb3JtYW5jZSwgc2luY2UgZWFj aCBmcmFtZSBoYXMgYSBtdWNoIGhpZ2hlciBjb3N0IHRoYW4gb24gQ1J1YnkuCgpJIHByb3Bvc2Ug dGhhdCB3ZSBuZWVkIGEgbmV3IGZvcm0gb2YgYGNhbGxlcmAgdGhhdCB0YWtlcyBhIGJsb2NrIGZv ciBwcm9jZXNzaW5nIGVhY2ggZWxlbWVudC4KCmBgYHJ1YnkKZGVmIGZpbmRfbWF0Y2hpbmdfZnJh bWUocmVnZXgpCiAgY2FsbGVyIGRvIHxmcmFtZXwKICAgIHJldHVybiBmcmFtZSBpZiBmcmFtZS5m aWxlID1+IHJlZ2V4CiAgZW5kCmVuZApgYGAKCkFuIGFsdGVybmF0aXZlIEFQSSB3b3VsZCBiZSB0 byBhbGxvdyBwYXNzaW5nIGEgcXVlcnkgb2JqZWN0IGFzIGEga2V5d29yZCBhcmd1bWVudCwgYXZv aWRpbmcgdGhlIGJsb2NrIGRpc3BhdGNoIGJ5IHBlcmZvcm1pbmcgdGhlIG1hdGNoIGludGVybmFs bHk6CgpgYGBydWJ5CmRlZiBmaW5kX21hdGNoaW5nX2ZyYW1lKHJlZ2V4KQogIGNhbGxlcihmaWxl OiByZWdleCkKZW5kCmBgYAoKVGhpcyBBUEkgd291bGQgcHJvdmlkZSBhIG1pZGRsZSBncm91bmQg YmV0d2VlbiBleHBsaWNpdGx5IHNwZWNpZnlpbmcgYSBtYXhpbXVtIG51bWJlciBvZiBzdGFjayBm cmFtZXMgYW5kIGFza2luZyBmb3IgYWxsIGZyYW1lcy4gTW9zdCBjb21tb24sIGhvdC1wYXRoIHVz ZXMgb2YgYGNhbGxlcmAgY291bGQgYmUgcmVwbGFjZWQgYnkgdGhlc2UgZm9ybXMsIHJlZHVjaW5n IG92ZXJoZWFkIG9uIGFsbCBSdWJ5IGltcGxlbWVudGF0aW9ucyBhbmQgZHJhc3RpY2FsbHkgcmVk dWNpbmcgaXQgd2hlcmUgc3RhY2sgdHJhY2VzIGFyZSBleHBlbnNpdmUuCgoKCi0tIApodHRwczov L2J1Z3MucnVieS1sYW5nLm9yZy8K