aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKarl Heuer <[email protected]>1995-01-31 01:26:09 +0000
committerKarl Heuer <[email protected]>1995-01-31 01:26:09 +0000
commit950c215d92e111b1a6e43c06824f68737c8f5a6e (patch)
tree5e44d03c9a7015685ae9bb20a2b6efad2a8c3c22 /src
parent7403b5c85eb1e38cb6354e4fb3ca5ae257b1759f (diff)
(defvar_display): New function.
Diffstat (limited to 'src')
-rw-r--r--src/lread.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/lread.c b/src/lread.c
index d19c15787a..ad8ba2a983 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -1817,7 +1817,7 @@ defalias (sname, string)
/* Define an "integer variable"; a symbol whose value is forwarded
to a C variable of type int. Sample call: */
- /* DEFVARINT ("indent-tabs-mode", &indent_tabs_mode, "Documentation"); */
+ /* DEFVAR_INT ("indent-tabs-mode", &indent_tabs_mode, "Documentation"); */
void
defvar_int (namestring, address)
char *namestring;
@@ -1906,6 +1906,22 @@ defvar_per_buffer (namestring, address, type, doc)
}
#endif /* standalone */
+
+/* Similar but define a variable whose value is the Lisp Object stored
+ at a particular offset in the current perdisplay object. */
+
+void
+defvar_display (namestring, offset)
+ char *namestring;
+ int offset;
+{
+ Lisp_Object sym, val;
+ sym = intern (namestring);
+ val = allocate_misc ();
+ XMISC (val)->type = Lisp_Misc_Display_Objfwd;
+ XDISPLAY_OBJFWD (val)->offset = offset;
+ XSYMBOL (sym)->value = val;
+}
init_lread ()
{