comparison src/tooltalk.c @ 5117:3742ea8250b5 ben-lisp-object ben-lisp-object-final-ws-year-2005

Checking in final CVS version of workspace 'ben-lisp-object'
author Ben Wing <ben@xemacs.org>
date Sat, 26 Dec 2009 00:20:27 -0600
parents facf3239ba30
children e0db3c197671
comparison
equal deleted inserted replaced
5116:e56f73345619 5117:3742ea8250b5
177 177
178 write_fmt_string (printcharfun, "#<tooltalk_message id:0x%lx 0x%x>", 178 write_fmt_string (printcharfun, "#<tooltalk_message id:0x%lx 0x%x>",
179 (long) (p->m), p->header.uid); 179 (long) (p->m), p->header.uid);
180 } 180 }
181 181
182 DEFINE_LRECORD_IMPLEMENTATION ("tooltalk-message", tooltalk_message, 182 DEFINE_NONDUMPABLE_LISP_OBJECT ("tooltalk-message", tooltalk_message,
183 0, /*dumpable-flag*/ 183 mark_tooltalk_message, print_tooltalk_message,
184 mark_tooltalk_message, print_tooltalk_message, 184 0, 0, 0,
185 0, 0, 0, 185 tooltalk_message_description,
186 tooltalk_message_description, 186 Lisp_Tooltalk_Message);
187 Lisp_Tooltalk_Message);
188 187
189 static Lisp_Object 188 static Lisp_Object
190 make_tooltalk_message (Tt_message m) 189 make_tooltalk_message (Tt_message m)
191 { 190 {
192 Lisp_Object val; 191 Lisp_Object obj = ALLOC_LISP_OBJECT (tooltalk_message);
193 Lisp_Tooltalk_Message *msg = 192 Lisp_Tooltalk_Message *msg = XTOOLTALK_MESSAGE (obj);
194 ALLOC_LCRECORD_TYPE (Lisp_Tooltalk_Message, &lrecord_tooltalk_message);
195 193
196 msg->m = m; 194 msg->m = m;
197 msg->callback = Qnil; 195 msg->callback = Qnil;
198 msg->plist_sym = Fmake_symbol (Tooltalk_Message_plist_str); 196 msg->plist_sym = Fmake_symbol (Tooltalk_Message_plist_str);
199 return wrap_tooltalk_message (msg); 197 return obj;
200 } 198 }
201 199
202 Tt_message 200 Tt_message
203 unbox_tooltalk_message (Lisp_Object msg) 201 unbox_tooltalk_message (Lisp_Object msg)
204 { 202 {
255 253
256 write_fmt_string (printcharfun, "#<tooltalk_pattern id:0x%lx 0x%x>", 254 write_fmt_string (printcharfun, "#<tooltalk_pattern id:0x%lx 0x%x>",
257 (long) (p->p), p->header.uid); 255 (long) (p->p), p->header.uid);
258 } 256 }
259 257
260 DEFINE_LRECORD_IMPLEMENTATION ("tooltalk-pattern", tooltalk_pattern, 258 DEFINE_NONDUMPABLE_LISP_OBJECT ("tooltalk-pattern", tooltalk_pattern,
261 0, /*dumpable-flag*/ 259 mark_tooltalk_pattern, print_tooltalk_pattern,
262 mark_tooltalk_pattern, print_tooltalk_pattern, 260 0, 0, 0,
263 0, 0, 0, 261 tooltalk_pattern_description,
264 tooltalk_pattern_description, 262 Lisp_Tooltalk_Pattern);
265 Lisp_Tooltalk_Pattern);
266 263
267 static Lisp_Object 264 static Lisp_Object
268 make_tooltalk_pattern (Tt_pattern p) 265 make_tooltalk_pattern (Tt_pattern p)
269 { 266 {
270 Lisp_Tooltalk_Pattern *pat = 267 Lisp_Object obj = ALLOC_LISP_OBJECT (tooltalk_pattern);
271 ALLOC_LCRECORD_TYPE (Lisp_Tooltalk_Pattern, &lrecord_tooltalk_pattern); 268 Lisp_Tooltalk_Pattern *pat = XTOOLTALK_PATTERN (obj);
272 Lisp_Object val;
273 269
274 pat->p = p; 270 pat->p = p;
275 pat->callback = Qnil; 271 pat->callback = Qnil;
276 pat->plist_sym = Fmake_symbol (Tooltalk_Pattern_plist_str); 272 pat->plist_sym = Fmake_symbol (Tooltalk_Pattern_plist_str);
277 273
278 return wrap_tooltalk_pattern (pat); 274 return obj;
279 } 275 }
280 276
281 static Tt_pattern 277 static Tt_pattern
282 unbox_tooltalk_pattern (Lisp_Object pattern) 278 unbox_tooltalk_pattern (Lisp_Object pattern)
283 { 279 {
1315 1311
1316 1312
1317 void 1313 void
1318 syms_of_tooltalk (void) 1314 syms_of_tooltalk (void)
1319 { 1315 {
1320 INIT_LRECORD_IMPLEMENTATION (tooltalk_message); 1316 INIT_LISP_OBJECT (tooltalk_message);
1321 INIT_LRECORD_IMPLEMENTATION (tooltalk_pattern); 1317 INIT_LISP_OBJECT (tooltalk_pattern);
1322 1318
1323 DEFSYMBOL_MULTIWORD_PREDICATE (Qtooltalk_messagep); 1319 DEFSYMBOL_MULTIWORD_PREDICATE (Qtooltalk_messagep);
1324 DEFSUBR (Ftooltalk_message_p); 1320 DEFSUBR (Ftooltalk_message_p);
1325 DEFSYMBOL_MULTIWORD_PREDICATE (Qtooltalk_patternp); 1321 DEFSYMBOL_MULTIWORD_PREDICATE (Qtooltalk_patternp);
1326 DEFSUBR (Ftooltalk_pattern_p); 1322 DEFSUBR (Ftooltalk_pattern_p);