From 62476adc5590f2441e4f3b35834da7022f0363c7 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Fri, 30 Sep 1994 20:32:45 +0000 Subject: [PATCH] (Fmake_local_variable): Doc fix. (Flocal_variable_p): New function. (syms_of_data): defsubr it. --- src/data.c | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/src/data.c b/src/data.c index c44bd6f0d46..8623281463f 100644 --- a/src/data.c +++ b/src/data.c @@ -1133,7 +1133,10 @@ VARIABLE previously had. If VARIABLE was void, it remains void.\)\n\ 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 @@ From now on the default value will apply in this buffer.") 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 @@ From now on the default value will apply in this buffer.") 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 @@ syms_of_data () 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); -- 2.39.5