From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jean Louis Newsgroups: gmane.emacs.help Subject: Is there equivalent internal function for this list-has-elements? Date: Sun, 18 Oct 2020 22:37:01 +0300 Message-ID: Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="38888"; mail-complaints-to="usenet@ciao.gmane.io" To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Sun Oct 18 21:37:37 2020 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 1kUEUn-0009ww-Jv for geh-help-gnu-emacs@m.gmane-mx.org; Sun, 18 Oct 2020 21:37:33 +0200 Original-Received: from localhost ([::1]:35042 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kUEUm-0001Ng-Mh for geh-help-gnu-emacs@m.gmane-mx.org; Sun, 18 Oct 2020 15:37:32 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:58350) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kUEUQ-0001NV-BK for help-gnu-emacs@gnu.org; Sun, 18 Oct 2020 15:37:10 -0400 Original-Received: from static.rcdrun.com ([95.85.24.50]:38475) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kUEUO-0003O4-N1 for help-gnu-emacs@gnu.org; Sun, 18 Oct 2020 15:37:09 -0400 Original-Received: from localhost ([::ffff:41.210.141.103]) (AUTH: PLAIN admin, TLS: TLS1.2,256bits,ECDHE_RSA_AES_256_GCM_SHA384) by static.rcdrun.com with ESMTPSA id 00000000002A0B37.000000005F8C9962.0000177E; Sun, 18 Oct 2020 19:37:05 +0000 Received-SPF: pass client-ip=95.85.24.50; envelope-from=support1@rcdrun.com; helo=static.rcdrun.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/18 14:42:07 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.25, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no 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:124556 Archived-At: For the below function `list-has-elements' maybe there exist some internal Emacs function that checks for list that elements that are contained in the haystak? Is there any? Other question is, if there is any function other than pushnew, if I do not wish to use the pushnew? I can maybe just make a check if element is in the list and then simply push? (defun list-has (needle haystack) "Returns elements of haystack that contain needle, case insensitive" (let ((nlist)) (dolist (element haystack (reverse nlist)) (when (string-match needle element) (pushnew element nlist))))) (defun list-has-elements (needles haystack) "Returns elements of haystack that contain needle, case insensitive" (if needles (let* ((needle (pop needles)) (haystack (list-has needle haystack))) (list-has-elements needles haystack)) haystack)) Thanks, Jean