Mercurial > hg > xemacs-beta
comparison src/rangetab.h @ 428:3ecd8885ac67 r21-2-22
Import from CVS: tag r21-2-22
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:28:15 +0200 |
parents | |
children | 8de8e3f6228a |
comparison
equal
deleted
inserted
replaced
427:0a0253eac470 | 428:3ecd8885ac67 |
---|---|
1 /* XEmacs routines to deal with range tables. | |
2 Copyright (C) 1995 Sun Microsystems, Inc. | |
3 Copyright (C) 1995 Ben Wing. | |
4 | |
5 This file is part of XEmacs. | |
6 | |
7 XEmacs is free software; you can redistribute it and/or modify it | |
8 under the terms of the GNU General Public License as published by the | |
9 Free Software Foundation; either version 2, or (at your option) any | |
10 later version. | |
11 | |
12 XEmacs is distributed in the hope that it will be useful, but WITHOUT | |
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
15 for more details. | |
16 | |
17 You should have received a copy of the GNU General Public License | |
18 along with XEmacs; see the file COPYING. If not, write to | |
19 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
20 Boston, MA 02111-1307, USA. */ | |
21 | |
22 /* Synched up with: Not in FSF. */ | |
23 | |
24 /* Extracted from rangetab.c by O. Galibert, 1998. */ | |
25 | |
26 #ifndef _XEMACS_RANGETAB_H_ | |
27 #define _XEMACS_RANGETAB_H_ | |
28 | |
29 typedef struct range_table_entry range_table_entry; | |
30 struct range_table_entry | |
31 { | |
32 EMACS_INT first; | |
33 EMACS_INT last; | |
34 Lisp_Object val; | |
35 }; | |
36 | |
37 typedef struct | |
38 { | |
39 Dynarr_declare (range_table_entry); | |
40 } range_table_entry_dynarr; | |
41 | |
42 struct Lisp_Range_Table | |
43 { | |
44 struct lcrecord_header header; | |
45 range_table_entry_dynarr *entries; | |
46 }; | |
47 | |
48 DECLARE_LRECORD (range_table, struct Lisp_Range_Table); | |
49 #define XRANGE_TABLE(x) \ | |
50 XRECORD (x, range_table, struct Lisp_Range_Table) | |
51 #define XSETRANGE_TABLE(x, p) XSETRECORD (x, p, range_table) | |
52 #define RANGE_TABLEP(x) RECORDP (x, range_table) | |
53 #define CHECK_RANGE_TABLE(x) CHECK_RECORD (x, range_table) | |
54 | |
55 #endif |