Mercurial > emacs
comparison src/data.c @ 83468:b98066f4aa10
Merged from emacs@sv.gnu.org
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-49
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-50
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-51
Make constrain-to-field notice overlays
* emacs@sv.gnu.org/emacs--devo--0--patch-52
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-53
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-54
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-55
Merge from erc--emacs--0
* emacs@sv.gnu.org/emacs--devo--0--patch-56
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-57
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-58
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-59
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-60
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-61
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-62
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-63
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-64
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-65
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-66
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-67
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-68
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-69
rcirc: Add flexible response formatting; Add nick abbrevs
* emacs@sv.gnu.org/emacs--devo--0--patch-70
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-71
Merge from gnus--rel--5.10
* emacs@sv.gnu.org/emacs--devo--0--patch-72
Update from CVS: man/dired.texi (Tumme): More tumme documentation.
* emacs@sv.gnu.org/gnus--rel--5.10--patch-18
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-19
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-20
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-21
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-22
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-23
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-24
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-25
Update from CVS
* emacs@sv.gnu.org/gnus--rel--5.10--patch-26
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-27
Update from CVS: lisp/gnus.el: Remove bogus comment.
* emacs@sv.gnu.org/gnus--rel--5.10--patch-28
Merge from emacs--devo--0
* emacs@sv.gnu.org/gnus--rel--5.10--patch-29
Add sendmail.el and smptmail.el from Emacs tree to contrib/
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-508
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Sun, 12 Feb 2006 00:15:44 +0000 |
parents | 38c49afb29d9 eb6c6d7a4c7f |
children | 24cf4bf418dc |
comparison
equal
deleted
inserted
replaced
83467:d04d8ccb3c41 | 83468:b98066f4aa10 |
---|---|
1 /* Primitive operations on Lisp data types for GNU Emacs Lisp interpreter. | 1 /* Primitive operations on Lisp data types for GNU Emacs Lisp interpreter. |
2 Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997, 1998, 1999, 2000, | 2 Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997, 1998, 1999, 2000, |
3 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | 3 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. |
4 | 4 |
5 This file is part of GNU Emacs. | 5 This file is part of GNU Emacs. |
6 | 6 |
7 GNU Emacs is free software; you can redistribute it and/or modify | 7 GNU Emacs is free software; you can redistribute it and/or modify |
8 it under the terms of the GNU General Public License as published by | 8 it under the terms of the GNU General Public License as published by |
1982 } | 1982 } |
1983 | 1983 |
1984 return hare; | 1984 return hare; |
1985 } | 1985 } |
1986 | 1986 |
1987 DEFUN ("indirect-function", Findirect_function, Sindirect_function, 1, 1, 0, | 1987 DEFUN ("indirect-function", Findirect_function, Sindirect_function, 1, 2, 0, |
1988 doc: /* Return the function at the end of OBJECT's function chain. | 1988 doc: /* Return the function at the end of OBJECT's function chain. |
1989 If OBJECT is a symbol, follow all function indirections and return the final | 1989 If OBJECT is not a symbol, just return it. Otherwise, follow all |
1990 function binding. | 1990 function indirections to find the final function binding and return it. |
1991 If OBJECT is not a symbol, just return it. | 1991 If the final symbol in the chain is unbound, signal a void-function error. |
1992 Signal a void-function error if the final symbol is unbound. | 1992 Optional arg NOERROR non-nil means to return nil instead of signalling. |
1993 Signal a cyclic-function-indirection error if there is a loop in the | 1993 Signal a cyclic-function-indirection error if there is a loop in the |
1994 function chain of symbols. */) | 1994 function chain of symbols. */) |
1995 (object) | 1995 (object, noerror) |
1996 register Lisp_Object object; | 1996 register Lisp_Object object; |
1997 Lisp_Object noerror; | |
1997 { | 1998 { |
1998 Lisp_Object result; | 1999 Lisp_Object result; |
1999 | 2000 |
2000 result = indirect_function (object); | 2001 result = indirect_function (object); |
2001 | 2002 |
2002 if (EQ (result, Qunbound)) | 2003 if (EQ (result, Qunbound)) |
2003 return Fsignal (Qvoid_function, Fcons (object, Qnil)); | 2004 return (NILP (noerror) |
2005 ? Fsignal (Qvoid_function, Fcons (object, Qnil)) | |
2006 : Qnil); | |
2004 return result; | 2007 return result; |
2005 } | 2008 } |
2006 | 2009 |
2007 /* Extract and set vector and string elements */ | 2010 /* Extract and set vector and string elements */ |
2008 | 2011 |