XEmacs 21.2.22 "Mercedes".
[chise/xemacs-chise.git.1] / src / buffer.h
index 9347064..6e3d980 100644 (file)
@@ -219,7 +219,6 @@ DECLARE_LRECORD (buffer, struct buffer);
 #define XBUFFER(x) XRECORD (x, buffer, struct buffer)
 #define XSETBUFFER(x, p) XSETRECORD (x, p, buffer)
 #define BUFFERP(x) RECORDP (x, buffer)
-#define GC_BUFFERP(x) GC_RECORDP (x, buffer)
 #define CHECK_BUFFER(x) CHECK_RECORD (x, buffer)
 #define CONCHECK_BUFFER(x) CONCHECK_RECORD (x, buffer)
 
@@ -409,6 +408,9 @@ for (mps_bufcons = Qunbound,                                                        \
 #define REAL_INC_CHARPTR(ptr) \
   ((void) ((ptr) += REP_BYTES_BY_FIRST_BYTE (* (unsigned char *) (ptr))))
 
+#define REAL_INC_CHARBYTIND(ptr,pos) \
+  (pos += REP_BYTES_BY_FIRST_BYTE (* (unsigned char *) (ptr)))
+
 #define REAL_DEC_CHARPTR(ptr) do {     \
   (ptr)--;                             \
 } while (!VALID_CHARPTR_P (ptr))
@@ -419,6 +421,11 @@ for (mps_bufcons = Qunbound,                                                       \
   REAL_INC_CHARPTR (ptr);              \
 } while (0)
 
+#define INC_CHARBYTIND(ptr,pos) do {           \
+  ASSERT_VALID_CHARPTR (ptr);          \
+  REAL_INC_CHARBYTIND (ptr,pos);               \
+} while (0)
+
 #define DEC_CHARPTR(ptr) do {                  \
   CONST Bufbyte *dc_ptr1 = (ptr);              \
   CONST Bufbyte *dc_ptr2 = dc_ptr1;            \
@@ -429,6 +436,7 @@ for (mps_bufcons = Qunbound,                                                        \
 } while (0)
 
 #else /* ! ERROR_CHECK_BUFPOS */
+#define INC_CHARBYTIND(ptr,pos) REAL_INC_CHARBYTIND (ptr,pos)
 #define INC_CHARPTR(ptr) REAL_INC_CHARPTR (ptr)
 #define DEC_CHARPTR(ptr) REAL_DEC_CHARPTR (ptr)
 #endif /* ! ERROR_CHECK_BUFPOS */
@@ -559,7 +567,7 @@ XCHAR_OR_CHAR_INT (Lisp_Object obj)
 
 #else
 
-#define XCHAR_OR_CHAR_INT(obj) (CHARP ((obj)) ? XCHAR ((obj)) : XINT ((obj)))
+#define XCHAR_OR_CHAR_INT(obj) (CHARP (obj) ? XCHAR (obj) : XINT (obj))
 
 #endif
 
@@ -618,9 +626,9 @@ INLINE Bytind BI_BUF_PTR_BYTE_POS (struct buffer *buf, Bufbyte *ptr);
 INLINE Bytind
 BI_BUF_PTR_BYTE_POS (struct buffer *buf, Bufbyte *ptr)
 {
-  return ((ptr) - (buf)->text->beg + 1
-         - ((ptr - (buf)->text->beg + 1) > (buf)->text->gpt
-            ? (buf)->text->gap_size : 0));
+  return (ptr - buf->text->beg + 1
+         - ((ptr - buf->text->beg + 1) > buf->text->gpt
+            ? buf->text->gap_size : 0));
 }
 
 #define BUF_PTR_BYTE_POS(buf, ptr) \
@@ -631,8 +639,8 @@ INLINE Bufbyte * BI_BUF_BYTE_ADDRESS (struct buffer *buf, Bytind pos);
 INLINE Bufbyte *
 BI_BUF_BYTE_ADDRESS (struct buffer *buf, Bytind pos)
 {
-  return ((buf)->text->beg +
-         ((pos >= (buf)->text->gpt ? (pos + (buf)->text->gap_size) : pos)
+  return (buf->text->beg +
+         ((pos >= buf->text->gpt ? (pos + buf->text->gap_size) : pos)
           - 1));
 }
 
@@ -644,8 +652,8 @@ INLINE Bufbyte * BI_BUF_BYTE_ADDRESS_BEFORE (struct buffer *buf, Bytind pos);
 INLINE Bufbyte *
 BI_BUF_BYTE_ADDRESS_BEFORE (struct buffer *buf, Bytind pos)
 {
-  return ((buf)->text->beg +
-         ((pos > (buf)->text->gpt ? (pos + (buf)->text->gap_size) : pos)
+  return (buf->text->beg +
+         ((pos > buf->text->gpt ? (pos + buf->text->gap_size) : pos)
           - 2));
 }
 
@@ -660,16 +668,16 @@ INLINE int valid_memind_p (struct buffer *buf, Memind x);
 INLINE int
 valid_memind_p (struct buffer *buf, Memind x)
 {
-  return ((x >= 1 && x <= (Memind) (buf)->text->gpt) ||
-         (x  > (Memind) ((buf)->text->gpt + (buf)->text->gap_size) &&
-          x <= (Memind) ((buf)->text->z   + (buf)->text->gap_size)));
+  return ((x >= 1 && x <= (Memind) buf->text->gpt) ||
+         (x  > (Memind) (buf->text->gpt + buf->text->gap_size) &&
+          x <= (Memind) (buf->text->z   + buf->text->gap_size)));
 }
 
 INLINE Memind bytind_to_memind (struct buffer *buf, Bytind x);
 INLINE Memind
 bytind_to_memind (struct buffer *buf, Bytind x)
 {
-  return (Memind) ((x > (buf)->text->gpt) ? (x + (buf)->text->gap_size) : x);
+  return (Memind) ((x > buf->text->gpt) ? (x + buf->text->gap_size) : x);
 }
 
 
@@ -680,8 +688,8 @@ memind_to_bytind (struct buffer *buf, Memind x)
 #ifdef ERROR_CHECK_BUFPOS
   assert (valid_memind_p (buf, x));
 #endif
-  return (Bytind) ((x > (Memind) (buf)->text->gpt) ?
-                  x - (buf)->text->gap_size :
+  return (Bytind) ((x > (Memind) buf->text->gpt) ?
+                  x - buf->text->gap_size :
                   x);
 }