Next: , Previous: , Up: Property Lists   [Contents][Index]


11.9.2 Working With Lax Plists

Recall that a lax plist is a property list whose keys are compared using equal instead of eq.

Function: lax-plist-get lax-plist property &optional default

This function extracts a value from a lax property list. The function returns the value corresponding to the given property, or default if property is not one of the properties on the list.

Function: lax-plist-put lax-plist property value

This function changes the value in lax-plist of property to value.

Function: lax-plist-remprop lax-plist property

This function removes from lax-plist the property property and its value. The new plist is returned; use (setq x (lax-plist-remprop x property)) to be sure to use the new value. The lax-plist is modified by side effects.

Function: lax-plist-member lax-plist property

This function returns t if property has a value specified in lax-plist.

In the following functions, if optional arg nil-means-not-present is non-nil, then a property with a nil value is ignored or removed. This feature is a virus that has infected old Lisp implementations (and thus E-Lisp, due to RMS’s enamorment with old Lisps), but should not be used except for backward compatibility.

Function: lax-plists-eq a b &optional nil-means-not-present

This function returns non-nil if lax property lists A and B are eq (i.e. their values are eq; their keys are still compared using equal).

Function: lax-plists-equal a b &optional nil-means-not-present

This function returns non-nil if lax property lists A and B are equal (i.e. their values are equal).

Function: canonicalize-lax-plist lax-plist &optional nil-means-not-present

This function destructively removes any duplicate entries from a lax plist. In such cases, the first entry applies.

The new plist is returned. If nil-means-not-present is given, the return value may not be eq to the passed-in value, so make sure to setq the value back into where it came from.


Next: , Previous: , Up: Property Lists   [Contents][Index]