Mercurial > hg > xemacs-beta
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); |