aboutsummaryrefslogtreecommitdiffstats
path: root/src/lisp.h
diff options
context:
space:
mode:
authorDmitry Antipov2013-01-10 14:30:16 +0400
committerDmitry Antipov2013-01-10 14:30:16 +0400
commit58cc0a010b7e16dfcf03d7e858ea27eba5dece65 (patch)
treec7df6a362013ac141d0cff69529052977b45e4b8 /src/lisp.h
parent997d5f2d1d86acc55fa9b659ab69399c2968bbdc (diff)
downloademacs-58cc0a010b7e16dfcf03d7e858ea27eba5dece65.tar.gz
emacs-58cc0a010b7e16dfcf03d7e858ea27eba5dece65.zip
Omit buffer_slot_type_mismatch and use generic predicates to enforce
the type of per-buffer values where appropriate. * src/lisp.h (struct Lisp_Buffer_Objfwd): Rename slottype member to predicate, which is how it's really used now. Adjust comment. * src/buffer.h (buffer_slot_type_mismatch): Remove prototype. * src/buffer.c (buffer_slot_type_mismatch): Remove. (DEFVAR_PER_BUFFER, defvar_per_buffer): Rename type argument to predicate. Adjust comment. (syms_of_buffer): Use Qsymbolp for major-mode. Use Qintegerp for fill-column, left-margin, tab-width, buffer-saved-size, left-margin-width, right-margin-width, left-fringe-width, right-fringe-width, scroll-bar-width and buffer-display-count. Use Qstringp for default-directory, buffer-file-name, buffer-file-truename and buffer-auto-save-file-name. Use Qfloatp for scroll-up-aggressively and scroll-down-aggressively. Use Qnumberp for line-spacing. * src/data.c (store_symval_forwarding): Adjust to call the predicate. * lisp/cus-start.el (toplevel): Only allow float values for scroll-up-aggressively and scroll-down-aggressively. Allow any number for line-spacing.
Diffstat (limited to 'src/lisp.h')
-rw-r--r--src/lisp.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lisp.h b/src/lisp.h
index a0dcc9ab5f3..8db61d3623a 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1450,7 +1450,8 @@ struct Lisp_Buffer_Objfwd
1450 { 1450 {
1451 enum Lisp_Fwd_Type type; /* = Lisp_Fwd_Buffer_Obj */ 1451 enum Lisp_Fwd_Type type; /* = Lisp_Fwd_Buffer_Obj */
1452 int offset; 1452 int offset;
1453 Lisp_Object slottype; /* Qnil, Lisp_Int, Lisp_Symbol, or Lisp_String. */ 1453 /* One of Qnil, Qintegerp, Qsymbolp, Qstringp, Qfloatp or Qnumberp. */
1454 Lisp_Object predicate;
1454 }; 1455 };
1455 1456
1456/* struct Lisp_Buffer_Local_Value is used in a symbol value cell when 1457/* struct Lisp_Buffer_Local_Value is used in a symbol value cell when