diff options
| author | Karoly Lorentey | 2004-04-27 15:53:30 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2004-04-27 15:53:30 +0000 |
| commit | 6c8caecfb9c96879b8ea6f1e08314408be40a832 (patch) | |
| tree | cec3e345d246fe9b789786da588c5c6334215679 /src/lisp.h | |
| parent | ced7ed5611e2a6e60a5ac7a97e165545843d0fa9 (diff) | |
| parent | c4c07982c1a6b3ddd9339ecdb9af1876f70d8792 (diff) | |
| download | emacs-6c8caecfb9c96879b8ea6f1e08314408be40a832.tar.gz emacs-6c8caecfb9c96879b8ea6f1e08314408be40a832.zip | |
Merged in changes from CVS trunk.
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-241
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-242
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-243
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-244
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-245
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-246
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-247
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-248
src/lisp.h (CYCLE_CHECK): Macro moved from xfaces.c
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-249
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-250
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-251
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-252
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-253
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-254
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-255
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-153
Diffstat (limited to 'src/lisp.h')
| -rw-r--r-- | src/lisp.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/lisp.h b/src/lisp.h index bc67f4dbe67..7e59c50c3b4 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -278,6 +278,10 @@ enum pvec_type | |||
| 278 | 278 | ||
| 279 | /* For convenience, we also store the number of elements in these bits. */ | 279 | /* For convenience, we also store the number of elements in these bits. */ |
| 280 | #define PSEUDOVECTOR_SIZE_MASK 0x1ff | 280 | #define PSEUDOVECTOR_SIZE_MASK 0x1ff |
| 281 | |||
| 282 | /* Number of bits to put in each character in the internal representation | ||
| 283 | of bool vectors. This should not vary across implementations. */ | ||
| 284 | #define BOOL_VECTOR_BITS_PER_CHAR 8 | ||
| 281 | 285 | ||
| 282 | /***** Select the tagging scheme. *****/ | 286 | /***** Select the tagging scheme. *****/ |
| 283 | 287 | ||
| @@ -3187,6 +3191,32 @@ extern Lisp_Object Vdirectory_sep_char; | |||
| 3187 | ? make_float (val) \ | 3191 | ? make_float (val) \ |
| 3188 | : make_number ((EMACS_INT)(val))) | 3192 | : make_number ((EMACS_INT)(val))) |
| 3189 | 3193 | ||
| 3194 | |||
| 3195 | /* Checks the `cycle check' variable CHECK to see if it indicates that | ||
| 3196 | EL is part of a cycle; CHECK must be either Qnil or a value returned | ||
| 3197 | by an earlier use of CYCLE_CHECK. SUSPICIOUS is the number of | ||
| 3198 | elements after which a cycle might be suspected; after that many | ||
| 3199 | elements, this macro begins consing in order to keep more precise | ||
| 3200 | track of elements. | ||
| 3201 | |||
| 3202 | Returns nil if a cycle was detected, otherwise a new value for CHECK | ||
| 3203 | that includes EL. | ||
| 3204 | |||
| 3205 | CHECK is evaluated multiple times, EL and SUSPICIOUS 0 or 1 times, so | ||
| 3206 | the caller should make sure that's ok. */ | ||
| 3207 | |||
| 3208 | #define CYCLE_CHECK(check, el, suspicious) \ | ||
| 3209 | (NILP (check) \ | ||
| 3210 | ? make_number (0) \ | ||
| 3211 | : (INTEGERP (check) \ | ||
| 3212 | ? (XFASTINT (check) < (suspicious) \ | ||
| 3213 | ? make_number (XFASTINT (check) + 1) \ | ||
| 3214 | : Fcons (el, Qnil)) \ | ||
| 3215 | : (!NILP (Fmemq ((el), (check))) \ | ||
| 3216 | ? Qnil \ | ||
| 3217 | : Fcons ((el), (check))))) | ||
| 3218 | |||
| 3219 | |||
| 3190 | #endif /* EMACS_LISP_H */ | 3220 | #endif /* EMACS_LISP_H */ |
| 3191 | 3221 | ||
| 3192 | /* arch-tag: 9b2ed020-70eb-47ac-94ee-e1c2a5107d5e | 3222 | /* arch-tag: 9b2ed020-70eb-47ac-94ee-e1c2a5107d5e |