From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: daanturo Newsgroups: gmane.emacs.devel Subject: Re: A function to take the regexp-matched subsring directly Date: Mon, 31 Oct 2022 10:47:28 +0700 Message-ID: References: <47fff48c-90d4-7c6b-7b92-8a99d9453f3f@gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------7CbYhRxaj0YjwT0Ee0hdTU0i" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="31240"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.1 Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Oct 31 13:25:06 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1opTqk-0007zk-1K for ged-emacs-devel@m.gmane-mx.org; Mon, 31 Oct 2022 13:25:06 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1opTpw-0006IM-It; Mon, 31 Oct 2022 08:24:18 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1opLlx-0006oa-4d for emacs-devel@gnu.org; Sun, 30 Oct 2022 23:47:37 -0400 Original-Received: from mail-pf1-x42d.google.com ([2607:f8b0:4864:20::42d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1opLlv-0003aa-DL for emacs-devel@gnu.org; Sun, 30 Oct 2022 23:47:36 -0400 Original-Received: by mail-pf1-x42d.google.com with SMTP id m6so9667236pfb.0 for ; Sun, 30 Oct 2022 20:47:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:from:references:cc:to:content-language:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=qAbt5R2yQkuOqgH1aqoAMkdabjbc0CFnkVRPlkovbpQ=; b=Kcezvm87waAJpXHCtpy/Pv88+LhYGd0D4gNLQo3Gy15J3chsaVc0017iSrq9jB/zvF 48S4pR014PTy5Kpb8aJOAeHSgADUzWz7mbUa4EOs2Q70W0xo6B2nAQNQzYuRtoC7HunI SQrWS9OHluzSRPzwXACUu0uo5dFdYg1voJGfELjKnXvOkYK6kmM5r2ei5r3z8Zu6862h eRpHijPWCzYmiqVowOl/5p1wBLjIpgfaHXJJigpT28AHMRuAxw1jbrsULBlpLu6PkyJk yMBph6ZfVvgB0vFGM/rwmp2stetDfJDp4HyKs40EtxE/ei2CWLjmzgJ1pj26mmAkEvYm 0PRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:from:references:cc:to:content-language:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=qAbt5R2yQkuOqgH1aqoAMkdabjbc0CFnkVRPlkovbpQ=; b=e4DaohAGfIGHPGQDWRLV4b002uK3qJ0r4Sbdnd96XAdUq2GM2F5HgAPlc4w3phr2O7 QdBvLP/f99MXFbojdy0d3MTKfFDTuNmTM8xDAGAkkaLOlYsye2TgAfNsKvDxpWVx6Dz6 bY1rFqH+t8UVniuzmBgvlH9ygkZPc6Q2H2vysttubcvZxVv9JXukpgzHo6VddTAKBk/s lChpTmBOxchBYJ59r992nVXYfKzAio2e2j03BGB3htyALlmctheTdYNjby/4M+335BkX 6QCGb+qDO6K5QprdbjqZY94yhBzYqDxkKEEWJnPyW3q471UVY+dX0Cn5UCKNUVqxGdod Q14w== X-Gm-Message-State: ACrzQf1MgyLIAfU/8aJgm9c/WdVAd017uB9hayEtcnznXmnARW5AxgCk BNPnFKKdVkbbe9HojTwaYEcGlXBmB5M= X-Google-Smtp-Source: AMsMyM6JnkuptQEfPRRCRuTdLUdnXbGLI8jYs2UJyWPKHo/Q6qqf5In1RA7yPeNAh/UiWRLcoAJBXA== X-Received: by 2002:a63:145d:0:b0:44b:f115:f90f with SMTP id 29-20020a63145d000000b0044bf115f90fmr10899961pgu.157.1667188053501; Sun, 30 Oct 2022 20:47:33 -0700 (PDT) Original-Received: from ?IPV6:2001:ee0:4f8d:5d40:72b7:27ac:56c4:2f2a? ([2001:ee0:4f8d:5d40:72b7:27ac:56c4:2f2a]) by smtp.gmail.com with ESMTPSA id ok4-20020a17090b1d4400b0020aaa678098sm3070715pjb.49.2022.10.30.20.47.31 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 30 Oct 2022 20:47:32 -0700 (PDT) Content-Language: en-US In-Reply-To: Received-SPF: pass client-ip=2607:f8b0:4864:20::42d; envelope-from=daanturo@gmail.com; helo=mail-pf1-x42d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Mon, 31 Oct 2022 08:24:11 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: "Emacs-devel" Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:298846 Archived-At: This is a multi-part message in MIME format. --------------7CbYhRxaj0YjwT0Ee0hdTU0i Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 31/10/2022 05:01, Stefan Monnier wrote: > NOTE: The convention in Elisp is that any function, except for a few > exceptions like car/assoc/+/goto-char, can clobber the match data, > so `save-match-data' should normally be used to save *your* match data > rather than your caller's match data." Thank you for clarifying, my updated version: -- Daanturo. --------------7CbYhRxaj0YjwT0Ee0hdTU0i Content-Type: text/x-patch; charset=UTF-8; name="0001-Define-regexp-match-regexp-match.patch" Content-Disposition: attachment; filename="0001-Define-regexp-match-regexp-match.patch" Content-Transfer-Encoding: base64 RnJvbSA0MzcyNDhkZTg5OTI4NzMyYWI5YWY4NWQ5MjNjN2FlODE1MjE0ZDk2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEYWFudHVybyA8ZGFhbnR1cm9AZ21haWwuY29tPgpE YXRlOiBTdW4sIDMwIE9jdCAyMDIyIDIxOjU0OjU2ICswNzAwClN1YmplY3Q6IFtQQVRDSF0g RGVmaW5lIHJlZ2V4cC1tYXRjaCwgcmVnZXhwLW1hdGNoKgoKKiBsaXNwL2VtYWNzLWxpc3Av c3Vici14LmVsOiBpbXBsZW1lbnRhdGlvbgoqIGRvYy9saXNwcmVmL3NlYXJjaGluZy50ZXhp OiBkb2N1bWVudHMKKiBldGMvTkVXUzogZG9jdW1lbnRzCiogbGlzcC9lbWFjcy1saXNwL3No b3J0ZG9jLmVsOiBkb2N1bWVudHMKLS0tCiBkb2MvbGlzcHJlZi9zZWFyY2hpbmcudGV4aSAg fCAzMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogZXRjL05FV1MgICAgICAg ICAgICAgICAgICAgIHwgIDcgKysrKysrKwogbGlzcC9lbWFjcy1saXNwL3Nob3J0ZG9jLmVs IHwgIDQgKysrKwogbGlzcC9lbWFjcy1saXNwL3N1YnIteC5lbCAgIHwgMjYgKysrKysrKysr KysrKysrKysrKysrKysrKysKIDQgZmlsZXMgY2hhbmdlZCwgNjkgaW5zZXJ0aW9ucygrKQoK ZGlmZiAtLWdpdCBhL2RvYy9saXNwcmVmL3NlYXJjaGluZy50ZXhpIGIvZG9jL2xpc3ByZWYv c2VhcmNoaW5nLnRleGkKaW5kZXggNzQzNzE4YjU2MC4uYTVjMGI0MjZkMCAxMDA2NDQKLS0t IGEvZG9jL2xpc3ByZWYvc2VhcmNoaW5nLnRleGkKKysrIGIvZG9jL2xpc3ByZWYvc2VhcmNo aW5nLnRleGkKQEAgLTIwOTksNiArMjA5OSwzOCBAQCBUaGlzIHByZWRpY2F0ZSBmdW5jdGlv biBkb2VzIHdoYXQgQGNvZGV7c3RyaW5nLW1hdGNofSBkb2VzLCBidXQgaXQKIGF2b2lkcyBt b2RpZnlpbmcgdGhlIG1hdGNoIGRhdGEuCiBAZW5kIGRlZnVuCiAKK0BkZWZ1biByZWdleHAt bWF0Y2ggcmVnZXhwIHN0cmluZyAmb3B0aW9uYWwgbgorVGhpcyBmdW5jdGlvbiByZXR1cm5z IHRoZSBuLXRoIG1hdGNoZWQgc3Vic3RyaW5nIGZvciByZWdleHAgaW4gc3RyaW5nLgorTiBk ZWZhdWx0cyB0byAwICh0aGUgd2hvbGUgbWF0Y2gpLgorCitAZXhhbXBsZQorQGdyb3VwCiso cmVnZXhwLW1hdGNoICJxdWljayIgIlRoZSBxdWljayBicm93biBmb3gganVtcGVkIHF1aWNr bHkuIikKKyAgICAgICAgQHJlc3VsdHt9ICJxdWljayIKK0BlbmQgZ3JvdXAKK0Bncm91cAor KHJlZ2V4cC1tYXRjaCAicXVpY2tbWzpzcGFjZTpdXStcXChbYS16XStcXCkiICJUaGUgcXVp Y2sgYnJvd24gZm94IGp1bXBlZCBxdWlja2x5LiIgMSkKKyAgICAgICAgQHJlc3VsdHt9ICJi cm93biIKK0BlbmQgZ3JvdXAKK0BlbmQgZXhhbXBsZQorCitAZW5kIGRlZnVuCisKKworQGRl ZnVuIHJlZ2V4cC1tYXRjaCogcmVnZXhwIHN0cmluZworVGhpcyBmdW5jdGlvbiByZXR1cm5z IGxpc3Qgb2YgbWF0Y2hlZCBzdWJzdHJpbmdzIGZvciByZWdleHAKK2luIHN0cmluZy4KKwor QGV4YW1wbGUKK0Bncm91cAorKHJlZ2V4cC1tYXRjaCogInF1aWNrW1s6c3BhY2U6XV0rXFwo W2Etel0rXFwpIiAiVGhlIHF1aWNrIGJyb3duIGZveCBqdW1wZWQgcXVpY2tseS4iKQorICAg ICAgICBAcmVzdWx0e30gKCJxdWljayBicm93biIgImJyb3duIikKK0BlbmQgZ3JvdXAKK0Bl bmQgZXhhbXBsZQorCitAZW5kIGRlZnVuCisKKwogQGRlZnVuIGxvb2tpbmctYXQgcmVnZXhw ICZvcHRpb25hbCBpbmhpYml0LW1vZGlmeQogVGhpcyBmdW5jdGlvbiBkZXRlcm1pbmVzIHdo ZXRoZXIgdGhlIHRleHQgaW4gdGhlIGN1cnJlbnQgYnVmZmVyIGRpcmVjdGx5CiBmb2xsb3dp bmcgcG9pbnQgbWF0Y2hlcyB0aGUgcmVndWxhciBleHByZXNzaW9uIEB2YXJ7cmVnZXhwfS4g IGBgRGlyZWN0bHkKZGlmZiAtLWdpdCBhL2V0Yy9ORVdTIGIvZXRjL05FV1MKaW5kZXggYTE4 NTk2NzQ4My4uYTE1ZTg1NTIxYiAxMDA2NDQKLS0tIGEvZXRjL05FV1MKKysrIGIvZXRjL05F V1MKQEAgLTMxOTgsNiArMzE5OCwxMyBAQCBUaGUgZm9sbG93aW5nIGdlbmVyYWxpemVkIHZh cmlhYmxlcyBoYXZlIGJlZW4gbWFkZSBvYnNvbGV0ZToKIAwKICogTGlzcCBDaGFuZ2VzIGlu IEVtYWNzIDI5LjEKIAorKysrCisqKiBOZXcgZnVuY3Rpb24gJ3JlZ2V4cC1tYXRjaCcsICdy ZWdleHAtbWF0Y2gqJy4KKydyZWdleHAtbWF0Y2gnIGNhbiBiZSB1c2VkIHRvIGV4dHJhY3Qg dGhlIHN1YnN0cmluZyB0aGF0IG1hdGNoZXMgYQord2FudGVkIHN1YmV4cHJlc3Npb24gZnJv bSBhIHN0cmluZywgd2hpbGUgJ3JlZ2V4cC1tYXRjaConIHJldHVybnMgdGhlCitjb3JyZXNw b25kaW5nIHN1YnN0cmluZyBmb3IgZWFjaCBzdWJleHByZXNzaW9uLiBCb3RoIG1vZGlmeSB0 aGUgbWF0Y2gKK2RhdGEuCisKICsrKwogKiogSW50ZXJwcmV0ZWQgY2xvc3VyZXMgYXJlICJz YWZlIGZvciBzcGFjZSIuCiBBcyB3YXMgYWxyZWFkeSB0aGUgY2FzZSBmb3IgYnl0ZS1jb21w aWxlZCBjbG9zdXJlcywgaW5zdGVhZCBvZiBjYXB0dXJpbmcKZGlmZiAtLWdpdCBhL2xpc3Av ZW1hY3MtbGlzcC9zaG9ydGRvYy5lbCBiL2xpc3AvZW1hY3MtbGlzcC9zaG9ydGRvYy5lbApp bmRleCBkYmFjMDM0MzJjLi44MWU2MTY4MjE3IDEwMDY0NAotLS0gYS9saXNwL2VtYWNzLWxp c3Avc2hvcnRkb2MuZWwKKysrIGIvbGlzcC9lbWFjcy1saXNwL3Nob3J0ZG9jLmVsCkBAIC03 ODEsNiArNzgxLDEwIEBAIEEgRlVOQyBmb3JtIGNhbiBoYXZlIGFueSBudW1iZXIgb2YgYDpu by1ldmFsJyAob3IgYDpuby12YWx1ZScpLAogICAgOmVnLXJlc3VsdCAzKQogICAoc2F2ZS1t YXRjaC1kYXRhCiAgICAgOm5vLWV2YWwgKHNhdmUtbWF0Y2gtZGF0YSAuLi4pKQorICAocmVn ZXhwLW1hdGNoCisgICA6ZXZhbCAocmVnZXhwLW1hdGNoICJeXFwoW2ZvXStcXCliIiAiZm9v YmFyIiAxKSkKKyAgKHJlZ2V4cC1tYXRjaCoKKyAgIDpldmFsIChyZWdleHAtbWF0Y2gqICJe XFwoW2ZvXStcXCliIiAiZm9vYmFyIikpCiAgICJSZXBsYWNpbmcgTWF0Y2giCiAgIChyZXBs YWNlLW1hdGNoCiAgICA6bm8tZXZhbCAocmVwbGFjZS1tYXRjaCAibmV3IikKZGlmZiAtLWdp dCBhL2xpc3AvZW1hY3MtbGlzcC9zdWJyLXguZWwgYi9saXNwL2VtYWNzLWxpc3Avc3Vici14 LmVsCmluZGV4IDZlNGQ4OGI0ZGYuLjJkMWI0MGEyZjAgMTAwNjQ0Ci0tLSBhL2xpc3AvZW1h Y3MtbGlzcC9zdWJyLXguZWwKKysrIGIvbGlzcC9lbWFjcy1saXNwL3N1YnIteC5lbApAQCAt MzQ3LDYgKzM0NywzMiBAQCBUaGlzIHRha2VzIGludG8gYWNjb3VudCBjb21iaW5pbmcgY2hh cmFjdGVycyBhbmQgZ3JhcGhlbWUgY2x1c3RlcnMuIgogICAgICAgICAoc2V0cSBzdGFydCAo MSsgc3RhcnQpKSkpCiAgICAgKG5yZXZlcnNlIHJlc3VsdCkpKQogCis7OzsjIyNhdXRvbG9h ZAorKGRlZnVuIHJlZ2V4cC1tYXRjaCAocmVnZXhwIHN0cmluZyAmb3B0aW9uYWwgbikKKyAg IlJldHVybiB0aGUgTiAtdGggbWF0Y2hlZCBzdWJzdHJpbmcgZm9yIFJFR0VYUCBpbiBTVFJJ TkcuCitOIGRlZmF1bHRzIHRvIDAgKHRoZSB3aG9sZSBtYXRjaCkuCisKK1RoaXMgZnVuY3Rp b24gbW9kaWZpZXMgdGhlIG1hdGNoIGRhdGEuIgorICAobGV0ICgobiAob3IgbiAwKSkpCisg ICAgKHdoZW4gKHN0cmluZy1tYXRjaCByZWdleHAgc3RyaW5nKQorICAgICAgKG1hdGNoLXN0 cmluZyBuIHN0cmluZykpKSkKKworOzs7IyMjYXV0b2xvYWQKKyhkZWZ1biByZWdleHAtbWF0 Y2gqIChyZWdleHAgc3RyaW5nKQorICAiUmV0dXJuIGEgbGlzdCBvZiBtYXRjaGVkIHN1YnN0 cmluZ3MgZm9yIFJFR0VYUCBpbiBTVFJJTkcuCisKK1RoaXMgZnVuY3Rpb24gbW9kaWZpZXMg dGhlIG1hdGNoIGRhdGEuIgorICAod2hlbiAoc3RyaW5nLW1hdGNoIHJlZ2V4cCBzdHJpbmcp CisgICAgKGxldCAoKG1hdGNoZWQtZGF0YSAobWF0Y2gtZGF0YSkpCisgICAgICAgICAgbWF0 Y2hlcyBiZWcgZW5kKQorICAgICAgKHdoaWxlIG1hdGNoZWQtZGF0YQorICAgICAgICAoc2V0 cSBiZWcgKHBvcCBtYXRjaGVkLWRhdGEpKQorICAgICAgICAoc2V0cSBlbmQgKHBvcCBtYXRj aGVkLWRhdGEpKQorICAgICAgICAocHVzaCAoYW5kIGJlZyBlbmQKKyAgICAgICAgICAgICAg ICAgICAoc3Vic3RyaW5nIHN0cmluZyBiZWcgZW5kKSkKKyAgICAgICAgICAgICAgbWF0Y2hl cykpCisgICAgICAobnJldmVyc2UgbWF0Y2hlcykpKSkKKwogOzs7IyMjYXV0b2xvYWQKIChk ZWZ1biBhZGQtZGlzcGxheS10ZXh0LXByb3BlcnR5IChzdGFydCBlbmQgcHJvcCB2YWx1ZQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZvcHRpb25hbCBvYmpl Y3QpCi0tIAoyLjM4LjEKCg== --------------7CbYhRxaj0YjwT0Ee0hdTU0i--