From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ted Zlatanov Newsgroups: gmane.emacs.devel Subject: Re: ELisp function prototypes and local function name Date: Wed, 06 Apr 2011 10:58:00 -0500 Organization: =?utf-8?B?0KLQtdC+0LTQvtGAINCX0LvQsNGC0LDQvdC+0LI=?= @ Cienfuegos Message-ID: <87k4f7pe2f.fsf@lifelogs.com> References: <87ei5fqz6h.fsf@lifelogs.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1302105512 23611 80.91.229.12 (6 Apr 2011 15:58:32 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 6 Apr 2011 15:58:32 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Apr 06 17:58:28 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Q7V7j-0001f7-Qr for ged-emacs-devel@m.gmane.org; Wed, 06 Apr 2011 17:58:27 +0200 Original-Received: from localhost ([127.0.0.1]:39917 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q7V7j-0004qB-2L for ged-emacs-devel@m.gmane.org; Wed, 06 Apr 2011 11:58:27 -0400 Original-Received: from [140.186.70.92] (port=60312 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q7V7a-0004pY-It for emacs-devel@gnu.org; Wed, 06 Apr 2011 11:58:23 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q7V7W-0005kg-8X for emacs-devel@gnu.org; Wed, 06 Apr 2011 11:58:18 -0400 Original-Received: from lo.gmane.org ([80.91.229.12]:40120) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q7V7W-0005ju-1p for emacs-devel@gnu.org; Wed, 06 Apr 2011 11:58:14 -0400 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1Q7V7S-0001VG-62 for emacs-devel@gnu.org; Wed, 06 Apr 2011 17:58:10 +0200 Original-Received: from 38.98.147.130 ([38.98.147.130]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 06 Apr 2011 17:58:10 +0200 Original-Received: from tzz by 38.98.147.130 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 06 Apr 2011 17:58:10 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 24 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: 38.98.147.130 X-Face: bd.DQ~'29fIs`T_%O%C\g%6jW)yi[zuz6; d4V0`@y-~$#3P_Ng{@m+e4o<4P'#(_GJQ%TT= D}[Ep*b!\e,fBZ'j_+#"Ps?s2!4H2-Y"sx" User-Agent: Gnus/5.110016 (No Gnus v0.16) Emacs/24.0.50 (gnu/linux) Cancel-Lock: sha1:DX6cwAjTZM4aWyb8Na9AW1hyy9k= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 80.91.229.12 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:138249 Archived-At: On Wed, 06 Apr 2011 17:19:49 +0200 Robert Pluim wrote: RP> Ted Zlatanov writes: >> I often find myself needing to know the prototype of a function I'm >> calling dynamically. Is there a way to get that? The ELisp reference >> manual doesn't have the info AFAICT. RP> You mean like eldoc-mode? Oh yes, I didn't think to check there. It looks like that calls the following (example with `mapc'): (help-split-fundoc (documentation 'mapc t) 'mapc) That seems nasty, taking text documentation and splitting it back to get the function arguments. Is that really the only way to get back the prototype? It seems like `eldoc-get-fnsym-args-string' should be able to do something simpler. The interpreter knows how many arguments a function expects and signals an error if the count is incorrect. Can that be used instead of the above? Ted