Lisp_Object args[3];
CHECK_FRAME (frame);
- framelist = Fcopy_sequence (FGET (XFRAME (frame), buffer_list));
+ framelist = Fcopy_sequence (XFRAME (frame)->buffer_list);
prevlist = Fnreverse (Fcopy_sequence
- (FGET (XFRAME (frame), buried_buffer_list)));
+ (XFRAME (frame)->buried_buffer_list));
/* Remove from GENERAL any buffer that duplicates one in
FRAMELIST or PREVLIST. */
BUF_CHARS_MODIFF (b) = 1;
BUF_OVERLAY_MODIFF (b) = 1;
BUF_SAVE_MODIFF (b) = 1;
- BUF_INTERVALS (b) = 0;
+ buffer_set_intervals (b, NULL);
BUF_UNCHANGED_MODIFIED (b) = 1;
BUF_OVERLAY_UNCHANGED_MODIFIED (b) = 1;
BUF_END_UNCHANGED (b) = 0;
BVAR (b, zv_marker) = Qnil;
name = Fcopy_sequence (buffer_or_name);
- STRING_SET_INTERVALS (name, NULL_INTERVAL);
+ string_set_intervals (name, NULL);
BVAR (b, name) = name;
BVAR (b, undo_list) = (SREF (name, 0) != ' ') ? Qnil : Qt;
Lisp_Object overlay, start, end;
struct Lisp_Marker *m;
- eassert (MARKERP (MVAR (list, start)));
- m = XMARKER (MVAR (list, start));
+ eassert (MARKERP (list->start));
+ m = XMARKER (list->start);
start = build_marker (b, m->charpos, m->bytepos);
XMARKER (start)->insertion_type = m->insertion_type;
- eassert (MARKERP (MVAR (list, end)));
- m = XMARKER (MVAR (list, end));
+ eassert (MARKERP (list->end));
+ m = XMARKER (list->end);
end = build_marker (b, m->charpos, m->bytepos);
XMARKER (end)->insertion_type = m->insertion_type;
- overlay = build_overlay (start, end, Fcopy_sequence (MVAR (list, plist)));
+ overlay = build_overlay (start, end, Fcopy_sequence (list->plist));
if (tail)
tail = tail->next = XOVERLAY (overlay);
else
all_buffers = b;
name = Fcopy_sequence (name);
- STRING_SET_INTERVALS (name, NULL_INTERVAL);
+ string_set_intervals (name, NULL);
BVAR (b, name) = name;
reset_buffer (b);
static void
drop_overlay (struct buffer *b, struct Lisp_Overlay *ov)
{
- eassert (b == XBUFFER (Fmarker_buffer (MVAR (ov, start))));
- modify_overlay (b, marker_position (MVAR (ov, start)),
- marker_position (MVAR (ov, end)));
- Fset_marker (MVAR (ov, start), Qnil, Qnil);
- Fset_marker (MVAR (ov, end), Qnil, Qnil);
+ eassert (b == XBUFFER (Fmarker_buffer (ov->start)));
+ modify_overlay (b, marker_position (ov->start),
+ marker_position (ov->end));
+ Fset_marker (ov->start, Qnil, Qnil);
+ Fset_marker (ov->end, Qnil, Qnil);
}
pred = frame_buffer_predicate (frame);
/* Consider buffers that have been seen in the frame first. */
- tail = FGET (XFRAME (frame), buffer_list);
+ tail = XFRAME (frame)->buffer_list;
for (; CONSP (tail); tail = XCDR (tail))
{
buf = XCAR (tail);
since anything can happen within do_yes_or_no_p. */
/* Don't kill the minibuffer now current. */
- if (EQ (buffer, WVAR (XWINDOW (minibuf_window), buffer)))
+ if (EQ (buffer, XWINDOW (minibuf_window)->buffer))
return Qnil;
/* When we kill an ordinary buffer which shares it's buffer text
/* If the buffer now current is shown in the minibuffer and our buffer
is the sole other buffer give up. */
XSETBUFFER (tem, current_buffer);
- if (EQ (tem, WVAR (XWINDOW (minibuf_window), buffer))
+ if (EQ (tem, XWINDOW (minibuf_window)->buffer)
&& EQ (buffer, Fother_buffer (buffer, Qnil, Qnil)))
return Qnil;
m = next;
}
BUF_MARKERS (b) = NULL;
- BUF_INTERVALS (b) = NULL_INTERVAL;
+ buffer_set_intervals (b, NULL);
/* Perhaps we should explicitly free the interval tree here... */
}
Vinhibit_quit = tem;
/* Update buffer list of selected frame. */
- FSET (f, buffer_list, Fcons (buffer, Fdelq (buffer, FGET (f, buffer_list))));
- FSET (f, buried_buffer_list, Fdelq (buffer, FGET (f, buried_buffer_list)));
+ FSET (f, buffer_list, Fcons (buffer, Fdelq (buffer, f->buffer_list)));
+ FSET (f, buried_buffer_list, Fdelq (buffer, f->buried_buffer_list));
/* Run buffer-list-update-hook. */
if (!NILP (Vrun_hooks))
Vinhibit_quit = tem;
/* Update buffer lists of selected frame. */
- FSET (f, buffer_list, Fdelq (buffer, FGET (f, buffer_list)));
+ FSET (f, buffer_list, Fdelq (buffer, f->buffer_list));
FSET (f, buried_buffer_list,
- Fcons (buffer, Fdelq (buffer, FGET (f, buried_buffer_list))));
+ Fcons (buffer, Fdelq (buffer, f->buried_buffer_list)));
/* Run buffer-list-update-hook. */
if (!NILP (Vrun_hooks))
while (NILP (Fmemq (w, ws)))
{
ws = Fcons (w, ws);
- if (MARKERP (WVAR (XWINDOW (w), pointm))
- && (EQ (WVAR (XWINDOW (w), buffer), buf1)
- || EQ (WVAR (XWINDOW (w), buffer), buf2)))
- Fset_marker (WVAR (XWINDOW (w), pointm),
+ if (MARKERP (XWINDOW (w)->pointm)
+ && (EQ (XWINDOW (w)->buffer, buf1)
+ || EQ (XWINDOW (w)->buffer, buf2)))
+ Fset_marker (XWINDOW (w)->pointm,
make_number
- (BUF_BEGV (XBUFFER (WVAR (XWINDOW (w), buffer)))),
- WVAR (XWINDOW (w), buffer));
+ (BUF_BEGV (XBUFFER (XWINDOW (w)->buffer))),
+ XWINDOW (w)->buffer);
w = Fnext_window (w, Qt, Qt);
}
}
/* If this is a buffer not in the selected window,
we must do other windows. */
- if (buf != XBUFFER (WVAR (XWINDOW (selected_window), buffer)))
+ if (buf != XBUFFER (XWINDOW (selected_window)->buffer))
windows_or_buffers_changed = 1;
/* If multiple windows show this buffer, we must do other windows. */
else if (buffer_shared > 1)
{
CHECK_OVERLAY (overlay);
- return Fcopy_sequence (MVAR (XOVERLAY (overlay), plist));
+ return Fcopy_sequence (XOVERLAY (overlay)->plist);
}
\f
(Lisp_Object overlay, Lisp_Object prop)
{
CHECK_OVERLAY (overlay);
- return lookup_char_property (MVAR (XOVERLAY (overlay), plist), prop, 0);
+ return lookup_char_property (XOVERLAY (overlay)->plist, prop, 0);
}
DEFUN ("overlay-put", Foverlay_put, Soverlay_put, 3, 3, 0,
buffer = Fmarker_buffer (OVERLAY_START (overlay));
- for (tail = MVAR (XOVERLAY (overlay), plist);
+ for (tail = XOVERLAY (overlay)->plist;
CONSP (tail) && CONSP (XCDR (tail));
tail = XCDR (XCDR (tail)))
if (EQ (XCAR (tail), prop))
}
/* It wasn't in the list, so add it to the front. */
changed = !NILP (value);
- MVAR (XOVERLAY (overlay), plist)
- = Fcons (prop, Fcons (value, MVAR (XOVERLAY (overlay), plist)));
+ set_overlay_plist
+ (overlay, Fcons (prop, Fcons (value, XOVERLAY (overlay)->plist)));
found:
if (! NILP (buffer))
{
/* No one will share the text with these buffers, but let's play it safe. */
buffer_defaults.indirections = 0;
buffer_local_symbols.indirections = 0;
- BUF_INTERVALS (&buffer_defaults) = 0;
- BUF_INTERVALS (&buffer_local_symbols) = 0;
+ buffer_set_intervals (&buffer_defaults, NULL);
+ buffer_set_intervals (&buffer_local_symbols, NULL);
XSETPVECTYPESIZE (&buffer_defaults, PVEC_BUFFER, pvecsize);
XSETBUFFER (Vbuffer_defaults, &buffer_defaults);
XSETPVECTYPESIZE (&buffer_local_symbols, PVEC_BUFFER, pvecsize);