comparison src/opaque.c @ 420:41dbb7a9d5f2 r21-2-18

Import from CVS: tag r21-2-18
author cvs
date Mon, 13 Aug 2007 11:24:09 +0200
parents 697ef44129c6
children 11054d720c21
comparison
equal deleted inserted replaced
419:66615b78f1a5 420:41dbb7a9d5f2
40 */ 40 */
41 41
42 #include <config.h> 42 #include <config.h>
43 #include "lisp.h" 43 #include "lisp.h"
44 #include "opaque.h" 44 #include "opaque.h"
45 #include <stddef.h>
46 45
47 Lisp_Object Qopaquep; 46 Lisp_Object Qopaquep;
48 47
49 static int in_opaque_list_marking; 48 static int in_opaque_list_marking;
50 49
174 return memory_hash (XOPAQUE_DATA (obj), XOPAQUE_SIZE (obj)); 173 return memory_hash (XOPAQUE_DATA (obj), XOPAQUE_SIZE (obj));
175 } 174 }
176 175
177 DEFINE_LRECORD_SEQUENCE_IMPLEMENTATION ("opaque", opaque, 176 DEFINE_LRECORD_SEQUENCE_IMPLEMENTATION ("opaque", opaque,
178 mark_opaque, print_opaque, 0, 177 mark_opaque, print_opaque, 0,
179 equal_opaque, hash_opaque, 178 equal_opaque, hash_opaque, 0,
180 sizeof_opaque, Lisp_Opaque); 179 sizeof_opaque, Lisp_Opaque);
181 180
182 static Lisp_Object 181 static Lisp_Object
183 mark_opaque_list (Lisp_Object obj, void (*markobj) (Lisp_Object)) 182 mark_opaque_list (Lisp_Object obj, void (*markobj) (Lisp_Object))
184 { 183 {
204 return val; 203 return val;
205 } 204 }
206 205
207 DEFINE_LRECORD_IMPLEMENTATION ("opaque-list", opaque_list, 206 DEFINE_LRECORD_IMPLEMENTATION ("opaque-list", opaque_list,
208 mark_opaque_list, internal_object_printer, 207 mark_opaque_list, internal_object_printer,
209 0, 0, 0, Lisp_Opaque_List); 208 0, 0, 0, 0, Lisp_Opaque_List);
210 209
211 Lisp_Object 210 Lisp_Object
212 allocate_managed_opaque (Lisp_Object opaque_list, CONST void *data) 211 allocate_managed_opaque (Lisp_Object opaque_list, CONST void *data)
213 { 212 {
214 Lisp_Opaque_List *li = XOPAQUE_LIST (opaque_list); 213 Lisp_Opaque_List *li = XOPAQUE_LIST (opaque_list);