Mercurial > hg > xemacs-beta
comparison src/number.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 |
---|---|
104 { XD_OPAQUE_DATA_CONVERTIBLE, offsetof (Lisp_Bignum, data), | 104 { XD_OPAQUE_DATA_CONVERTIBLE, offsetof (Lisp_Bignum, data), |
105 0, { &bignum_opc }, XD_FLAG_NO_KKCC }, | 105 0, { &bignum_opc }, XD_FLAG_NO_KKCC }, |
106 { XD_END } | 106 { XD_END } |
107 }; | 107 }; |
108 | 108 |
109 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("bignum", bignum, 1, 0, bignum_print, | 109 DEFINE_BASIC_LISP_OBJECT ("bignum", bignum, 0, bignum_print, |
110 0, bignum_equal, bignum_hash, | 110 0, bignum_equal, bignum_hash, |
111 bignum_description, Lisp_Bignum); | 111 bignum_description, Lisp_Bignum); |
112 | 112 |
113 #endif /* HAVE_BIGNUM */ | 113 #endif /* HAVE_BIGNUM */ |
114 | 114 |
181 static const struct memory_description ratio_description[] = { | 181 static const struct memory_description ratio_description[] = { |
182 { XD_OPAQUE_PTR, offsetof (Lisp_Ratio, data) }, | 182 { XD_OPAQUE_PTR, offsetof (Lisp_Ratio, data) }, |
183 { XD_END } | 183 { XD_END } |
184 }; | 184 }; |
185 | 185 |
186 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("ratio", ratio, 0, 0, ratio_print, | 186 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("ratio", ratio, 0, ratio_print, |
187 0, ratio_equal, ratio_hash, | 187 0, ratio_equal, ratio_hash, |
188 ratio_description, Lisp_Ratio); | 188 ratio_description, Lisp_Ratio); |
189 | 189 |
190 #endif /* HAVE_RATIO */ | 190 #endif /* HAVE_RATIO */ |
191 | 191 |
192 Lisp_Object Qratiop; | 192 Lisp_Object Qratiop; |
193 | 193 |
268 static const struct memory_description bigfloat_description[] = { | 268 static const struct memory_description bigfloat_description[] = { |
269 { XD_OPAQUE_PTR, offsetof (Lisp_Bigfloat, bf) }, | 269 { XD_OPAQUE_PTR, offsetof (Lisp_Bigfloat, bf) }, |
270 { XD_END } | 270 { XD_END } |
271 }; | 271 }; |
272 | 272 |
273 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("bigfloat", bigfloat, 1, 0, | 273 DEFINE_BASIC_LISP_OBJECT ("bigfloat", bigfloat, 0, |
274 bigfloat_print, 0, | 274 bigfloat_print, 0, |
275 bigfloat_equal, bigfloat_hash, | 275 bigfloat_equal, bigfloat_hash, |
276 bigfloat_description, Lisp_Bigfloat); | 276 bigfloat_description, Lisp_Bigfloat); |
277 | 277 |
278 #endif /* HAVE_BIGFLOAT */ | 278 #endif /* HAVE_BIGFLOAT */ |
741 | 741 |
742 void | 742 void |
743 syms_of_number (void) | 743 syms_of_number (void) |
744 { | 744 { |
745 #ifdef HAVE_BIGNUM | 745 #ifdef HAVE_BIGNUM |
746 INIT_LRECORD_IMPLEMENTATION (bignum); | 746 INIT_LISP_OBJECT (bignum); |
747 #endif | 747 #endif |
748 #ifdef HAVE_RATIO | 748 #ifdef HAVE_RATIO |
749 INIT_LRECORD_IMPLEMENTATION (ratio); | 749 INIT_LISP_OBJECT (ratio); |
750 #endif | 750 #endif |
751 #ifdef HAVE_BIGFLOAT | 751 #ifdef HAVE_BIGFLOAT |
752 INIT_LRECORD_IMPLEMENTATION (bigfloat); | 752 INIT_LISP_OBJECT (bigfloat); |
753 #endif | 753 #endif |
754 | 754 |
755 /* Type predicates */ | 755 /* Type predicates */ |
756 DEFSYMBOL (Qrationalp); | 756 DEFSYMBOL (Qrationalp); |
757 DEFSYMBOL (Qfloatingp); | 757 DEFSYMBOL (Qfloatingp); |