DEFUN ("plist-get", Fplist_get, Splist_get, 2, 2, 0,
"Extract a value from a property list.\n\
PLIST is a property list, which is a list of the form\n\
-(PROP1 VALUE1 PROP2 VALUE2...). This function returns the value\n\
+\(PROP1 VALUE1 PROP2 VALUE2...). This function returns the value\n\
corresponding to the given PROP, or nil if PROP is not\n\
one of the properties on the list.")
(val, prop)
DEFUN ("get", Fget, Sget, 2, 2, 0,
"Return the value of SYMBOL's PROPNAME property.\n\
-This is the last VALUE stored with `(put SYMBOL PROPNAME VALUE)'.")
- (sym, prop)
- Lisp_Object sym, prop;
+This is the last value stored with `(put SYMBOL PROPNAME VALUE)'.")
+ (symbol, propname)
+ Lisp_Object symbol, propname;
{
- return Fplist_get (Fsymbol_plist (sym), prop);
+ CHECK_SYMBOL (symbol, 0);
+ return Fplist_get (XSYMBOL (symbol)->plist, propname);
}
DEFUN ("plist-put", Fplist_put, Splist_put, 3, 3, 0,
"Change value in PLIST of PROP to VAL.\n\
PLIST is a property list, which is a list of the form\n\
-(PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol and VAL is any object.\n\
+\(PROP1 VALUE1 PROP2 VALUE2 ...). PROP is a symbol and VAL is any object.\n\
If PROP is already a property on the list, its value is set to VAL,\n\
otherwise the new PROP VAL pair is added. The new plist is returned;
use `(setq x (plist-put x prop val))' to be sure to use the new value.\n\
DEFUN ("put", Fput, Sput, 3, 3, 0,
"Store SYMBOL's PROPNAME property with value VALUE.\n\
It can be retrieved with `(get SYMBOL PROPNAME)'.")
- (sym, prop, val)
- Lisp_Object sym, prop, val;
+ (symbol, propname, value)
+ Lisp_Object symbol, propname, value;
{
- Fsetplist (sym, Fplist_put (Fsymbol_plist (sym), prop, val));
- return val;
+ CHECK_SYMBOL (symbol, 0);
+ XSYMBOL (symbol)->plist
+ = Fplist_put (XSYMBOL (symbol)->plist, propname, value);
+ return value;
}
DEFUN ("equal", Fequal, Sequal, 2, 2, 0,