]> code.delx.au - gnu-emacs/blobdiff - src/intervals.h
Fix copyright years by hand
[gnu-emacs] / src / intervals.h
index 816ea105bd7e9523e764756c1f99b9235c80a8ce..8f0f3482ea54322e0d9d862af47a7740f9f78439 100644 (file)
@@ -1,5 +1,5 @@
 /* Definitions and global variables for intervals.
-   Copyright (C) 1993-1994, 2000-2013 Free Software Foundation, Inc.
+   Copyright (C) 1993-1994, 2000-2015 Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
@@ -133,6 +133,14 @@ struct interval
 /* Use these functions to set Lisp_Object
    or pointer slots of struct interval.  */
 
+INLINE void
+set_interval_object (INTERVAL i, Lisp_Object obj)
+{
+  eassert (BUFFERP (obj) || STRINGP (obj));
+  i->up_obj = 1;
+  i->up.obj = obj;
+}
+
 INLINE void
 set_interval_parent (INTERVAL i, INTERVAL parent)
 {
@@ -189,6 +197,7 @@ set_interval_plist (INTERVAL i, Lisp_Object plist)
 /* Is this interval writable?  Replace later with cache access.  */
 #define INTERVAL_WRITABLE_P(i)                                 \
   (i && (NILP (textget ((i)->plist, Qread_only))               \
+         || !NILP (textget ((i)->plist, Qinhibit_read_only))   \
         || ((CONSP (Vinhibit_read_only)                        \
              ? !NILP (Fmemq (textget ((i)->plist, Qread_only), \
                              Vinhibit_read_only))              \
@@ -270,10 +279,8 @@ extern Lisp_Object Qpoint_entered;
 extern Lisp_Object Qmodification_hooks;
 extern Lisp_Object Qcategory;
 extern Lisp_Object Qlocal_map;
-extern Lisp_Object Qkeymap;
 
 /* Visual properties text (including strings) may have.  */
-extern Lisp_Object Qfont;
 extern Lisp_Object Qinvisible, Qintangible;
 
 /* Sticky properties.  */