From d90a14e078b7e833d56495e400460bce1729a7fa Mon Sep 17 00:00:00 2001 From: Gerd Moellmann Date: Fri, 8 Mar 2002 10:26:32 +0000 Subject: [PATCH] (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros. --- src/lisp.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/lisp.h b/src/lisp.h index cc464b95e92..234ab3ea9c7 100644 --- a/src/lisp.h +++ b/src/lisp.h @@ -1,5 +1,5 @@ /* Fundamental definitions for GNU Emacs Lisp interpreter. - Copyright (C) 1985,86,87,93,94,95,97,98,1999,2000, 2001 + Copyright (C) 1985,86,87,93,94,95,97,98,1999,2000, 2001, 2002 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -535,6 +535,14 @@ extern Lisp_Object make_number (); #define ASET(ARRAY, IDX, VAL) (AREF ((ARRAY), (IDX)) = (VAL)) #define ASIZE(ARRAY) XVECTOR ((ARRAY))->size +/* Convenience macros for dealing with Lisp strings. */ + +#define SREF(string, index) XSTRING (string)->data[index] +#define SDATA(string) XSTRING (string)->data +#define SCHARS(string) XSTRING (string)->size +#define SBYTES(string) XSTRING (string)->size_bytes +#define SMBP(string) STRING_MULTIBYTE (string) + /* Basic data type for use of intervals. See the macros in intervals.h. */ -- 2.39.2