From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Marcin Borkowski Newsgroups: gmane.emacs.help Subject: Re: Is it ok to sort a list of overlays destructively? Date: Tue, 27 Jul 2021 22:14:39 +0200 Message-ID: <87czr3ecpc.fsf@mbork.pl> References: <87h7ggcov1.fsf@mbork.pl> <83bl6nvpcl.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40935"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: mu4e 1.1.0; emacs 28.0.50 Cc: help-gnu-emacs@gnu.org To: Eli Zaretskii Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Tue Jul 27 22:15:41 2021 Return-path: Envelope-to: geh-help-gnu-emacs@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 1m8TUK-000ARa-OG for geh-help-gnu-emacs@m.gmane-mx.org; Tue, 27 Jul 2021 22:15:40 +0200 Original-Received: from localhost ([::1]:38480 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m8TUJ-0001qf-Ga for geh-help-gnu-emacs@m.gmane-mx.org; Tue, 27 Jul 2021 16:15:39 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:44300) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m8TTk-0001qJ-1P for help-gnu-emacs@gnu.org; Tue, 27 Jul 2021 16:15:04 -0400 Original-Received: from mail.mojserwer.eu ([195.110.48.8]:53488) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m8TTg-0004Ec-CO; Tue, 27 Jul 2021 16:15:03 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by mail.mojserwer.eu (Postfix) with ESMTP id AE9CBE6B6E; Tue, 27 Jul 2021 22:14:53 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail.mojserwer.eu Original-Received: from mail.mojserwer.eu ([127.0.0.1]) by localhost (mail.mojserwer.eu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id oLM0Ebuggy4U; Tue, 27 Jul 2021 22:14:42 +0200 (CEST) Original-Received: from localhost (178235147028.dynamic-3-poz-k-0-1-0.vectranet.pl [178.235.147.28]) by mail.mojserwer.eu (Postfix) with ESMTPSA id 96E4FE6B6D; Tue, 27 Jul 2021 22:14:42 +0200 (CEST) In-reply-to: <83bl6nvpcl.fsf@gnu.org> Received-SPF: pass client-ip=195.110.48.8; envelope-from=mbork@mbork.pl; helo=mail.mojserwer.eu X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:132128 Archived-At: On 2021-07-27, at 15:49, Eli Zaretskii wrote: >> From: Marcin Borkowski >> Date: Tue, 27 Jul 2021 07:22:42 +0200 >> >> I need to sort the list of overlays returned by `overlays-in'. The docs >> for that function do not says explicitly that it creates a new list >> every time, although a cursory glance at its source says that it >> apparently does. > > Yes, it's a list that is created specifically for this function, and > every time anew. (Internally, overlays of a buffer aren't stored as a > single list, so returning anything but a copy would be impossible.) That's what I supposed - but I want to be sure I do not give bad advice (relying on undocumented implementation details) - the reason for this question was that I have code sorting a list of overlays in my book. > The doc string kinda hints on that, since it talks about sorting the > list, which would be unthinkable if it were the internal storage. --8<---------------cut here---------------start------------->8--- Return a list of the overlays that overlap the region BEG ... END. Overlap means that at least one character is contained within the overlay and also contained within the specified region. Empty overlays are included in the result if they are located at BEG, between BEG and END, or at END provided END denotes the position at the end of the buffer. --8<---------------cut here---------------end--------------->8--- Where does it say anything about sorting? -- Marcin Borkowski http://mbork.pl