Mercurial > emacs
changeset 9194:3db4151c3d00
(Fmake_local_variable): Doc fix.
(Flocal_variable_p): New function.
(syms_of_data): defsubr it.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 30 Sep 1994 20:32:45 +0000 |
parents | 86fd33a4f327 |
children | 70b00615cb75 |
files | src/data.c |
diffstat | 1 files changed, 23 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/data.c Fri Sep 30 17:18:24 1994 +0000 +++ b/src/data.c Fri Sep 30 20:32:45 1994 +0000 @@ -1133,7 +1133,10 @@ See also `make-variable-buffer-local'.\n\n\ If the variable is already arranged to become local when set,\n\ this function causes a local value to exist for this buffer,\n\ -just as if the variable were set.") +just as setting the variable would do.\n\ +\n\ +Do not use `make-local-variable' to make a hook variable buffer-local.\n\ +Use `make-local-hook' instead.") (sym) register Lisp_Object sym; { @@ -1241,6 +1244,23 @@ return sym; } + +DEFUN ("local-variable-p", Flocal_variable_p, Slocal_variable_p, + 1, 1, 0, + "Non-nil if VARIABLE has a local binding in the current buffer.") + (sym) + register Lisp_Object sym; +{ + Lisp_Object valcontents; + + CHECK_SYMBOL (sym, 0); + + valcontents = XSYMBOL (sym)->value; + return ((BUFFER_LOCAL_VALUEP (valcontents) + || SOME_BUFFER_LOCAL_VALUEP (valcontents) + || BUFFER_OBJFWDP (valcontents)) + ? Qt : Qnil); +} /* Find the function at the end of a chain of symbol function indirections. */ @@ -1253,7 +1273,7 @@ error if the chain ends up unbound. */ Lisp_Object indirect_function (object) - register Lisp_Object object; + register Lisp_Object object; { Lisp_Object tortoise, hare; @@ -2292,6 +2312,7 @@ defsubr (&Smake_variable_buffer_local); defsubr (&Smake_local_variable); defsubr (&Skill_local_variable); + defsubr (&Slocal_variable_p); defsubr (&Saref); defsubr (&Saset); defsubr (&Snumber_to_string);