symbol plist accessor
authorBT Templeton <bt@hcoop.net>
Sat, 17 Aug 2013 02:50:55 +0000 (22:50 -0400)
committerRobin Templeton <robin@terpri.org>
Sun, 19 Apr 2015 07:43:02 +0000 (03:43 -0400)
src/data.c
src/fns.c
src/lisp.h

index 1c3edca..9f0b9a3 100644 (file)
@@ -686,7 +686,7 @@ DEFUN ("symbol-plist", Fsymbol_plist, Ssymbol_plist, 1, 1, 0,
   (register Lisp_Object symbol)
 {
   CHECK_SYMBOL (symbol);
-  return XSYMBOL (symbol)->plist;
+  return symbol_plist (symbol);
 }
 
 DEFUN ("symbol-name", Fsymbol_name, Ssymbol_name, 1, 1, 0,
index 01c1f43..91f788f 100644 (file)
--- a/src/fns.c
+++ b/src/fns.c
@@ -1906,7 +1906,7 @@ This is the last value stored with `(put SYMBOL PROPNAME VALUE)'.  */)
   (Lisp_Object symbol, Lisp_Object propname)
 {
   CHECK_SYMBOL (symbol);
-  return Fplist_get (XSYMBOL (symbol)->plist, propname);
+  return Fplist_get (symbol_plist (symbol), propname);
 }
 
 DEFUN ("plist-put", Fplist_put, Splist_put, 3, 3, 0,
@@ -1949,7 +1949,7 @@ It can be retrieved with `(get SYMBOL PROPNAME)'.  */)
 {
   CHECK_SYMBOL (symbol);
   set_symbol_plist
-    (symbol, Fplist_put (XSYMBOL (symbol)->plist, propname, value));
+    (symbol, Fplist_put (symbol_plist (symbol), propname, value));
   return value;
 }
 \f
index 1bf3693..c4c5344 100644 (file)
@@ -2763,6 +2763,12 @@ set_symbol_function (Lisp_Object sym, Lisp_Object function)
   scm_variable_set_x (scm_module_lookup (function_module, sym), function);
 }
 
+INLINE Lisp_Object
+symbol_plist (Lisp_Object sym)
+{
+  return XSYMBOL (sym)->plist;
+}
+
 INLINE void
 set_symbol_plist (Lisp_Object sym, Lisp_Object plist)
 {