comparison src/buffer.c @ 45683:9e40bb8e9a60

(Foverlay_get): Use lookup_char_property.
author Colin Walters <walters@gnu.org>
date Sat, 08 Jun 2002 20:25:31 +0000
parents 7d132ad61148
children 3ba98b59cb49
comparison
equal deleted inserted replaced
45682:b9f2c8b7c60e 45683:9e40bb8e9a60
3910 DEFUN ("overlay-get", Foverlay_get, Soverlay_get, 2, 2, 0, 3910 DEFUN ("overlay-get", Foverlay_get, Soverlay_get, 2, 2, 0,
3911 doc: /* Get the property of overlay OVERLAY with property name PROP. */) 3911 doc: /* Get the property of overlay OVERLAY with property name PROP. */)
3912 (overlay, prop) 3912 (overlay, prop)
3913 Lisp_Object overlay, prop; 3913 Lisp_Object overlay, prop;
3914 { 3914 {
3915 Lisp_Object plist, fallback;
3916
3917 CHECK_OVERLAY (overlay); 3915 CHECK_OVERLAY (overlay);
3918 3916 return lookup_char_property (XOVERLAY (overlay)->plist, prop, 0);
3919 fallback = Qnil;
3920
3921 for (plist = XOVERLAY (overlay)->plist;
3922 CONSP (plist) && CONSP (XCDR (plist));
3923 plist = XCDR (XCDR (plist)))
3924 {
3925 if (EQ (XCAR (plist), prop))
3926 return XCAR (XCDR (plist));
3927 else if (EQ (XCAR (plist), Qcategory))
3928 {
3929 Lisp_Object tem;
3930 tem = Fcar (Fcdr (plist));
3931 if (SYMBOLP (tem))
3932 fallback = Fget (tem, prop);
3933 }
3934 }
3935
3936 return fallback;
3937 } 3917 }
3938 3918
3939 DEFUN ("overlay-put", Foverlay_put, Soverlay_put, 3, 3, 0, 3919 DEFUN ("overlay-put", Foverlay_put, Soverlay_put, 3, 3, 0,
3940 doc: /* Set one property of overlay OVERLAY: give property PROP value VALUE. */) 3920 doc: /* Set one property of overlay OVERLAY: give property PROP value VALUE. */)
3941 (overlay, prop, value) 3921 (overlay, prop, value)