comparison src/number.h @ 2092:f557693c61de

[xemacs-hg @ 2004-05-21 20:56:26 by james] Batch of fixes and new functions for bignums, ratios, and bigfloats.
author james
date Fri, 21 May 2004 20:56:32 +0000
parents 471242c84954
children 639cdee384e4
comparison
equal deleted inserted replaced
2091:0221e454fe63 2092:f557693c61de
104 extern Lisp_Object make_bignum_bg (bignum); 104 extern Lisp_Object make_bignum_bg (bignum);
105 extern bignum scratch_bignum, scratch_bignum2; 105 extern bignum scratch_bignum, scratch_bignum2;
106 106
107 #else /* !HAVE_BIGNUM */ 107 #else /* !HAVE_BIGNUM */
108 108
109 extern Lisp_Object Qbignump;
110 #define BIGNUMP(x) 0 109 #define BIGNUMP(x) 0
111 #define CHECK_BIGNUM(x) dead_wrong_type_argument (Qbignump, x) 110 #define CHECK_BIGNUM(x) dead_wrong_type_argument (Qbignump, x)
112 #define CONCHECK_BIGNUM(x) dead_wrong_type_argument (Qbignump, x) 111 #define CONCHECK_BIGNUM(x) dead_wrong_type_argument (Qbignump, x)
113 typedef void bignum; 112 typedef void bignum;
114 #define make_bignum(l) This XEmacs does not support bignums 113 #define make_bignum(l) This XEmacs does not support bignums
115 #define make_bignum_bg(b) This XEmacs does not support bignums 114 #define make_bignum_bg(b) This XEmacs does not support bignums
116 115
117 #endif /* HAVE_BIGNUM */ 116 #endif /* HAVE_BIGNUM */
118 117
118 extern Lisp_Object Qbignump;
119 EXFUN (Fbignump, 1); 119 EXFUN (Fbignump, 1);
120 120
121 121
122 /********************************* Integers *********************************/ 122 /********************************* Integers *********************************/
123 extern Lisp_Object Qintegerp; 123 extern Lisp_Object Qintegerp;
187 extern Lisp_Object make_ratio_rt (ratio); 187 extern Lisp_Object make_ratio_rt (ratio);
188 extern ratio scratch_ratio; 188 extern ratio scratch_ratio;
189 189
190 #else /* !HAVE_RATIO */ 190 #else /* !HAVE_RATIO */
191 191
192 extern Lisp_Object Qratiop;
193 #define RATIOP(x) 0 192 #define RATIOP(x) 0
194 #define CHECK_RATIO(x) dead_wrong_type_argument (Qratiop, x) 193 #define CHECK_RATIO(x) dead_wrong_type_argument (Qratiop, x)
195 #define CONCHECK_RATIO(x) dead_wrong_type_argument (Qratiop, x) 194 #define CONCHECK_RATIO(x) dead_wrong_type_argument (Qratiop, x)
196 typedef void ratio; 195 typedef void ratio;
197 #define make_ratio(n,d) This XEmacs does not support ratios 196 #define make_ratio(n,d) This XEmacs does not support ratios
198 #define make_ratio_bg(n,d) This XEmacs does not support ratios 197 #define make_ratio_bg(n,d) This XEmacs does not support ratios
199 198
200 #endif /* HAVE_RATIO */ 199 #endif /* HAVE_RATIO */
201 200
201 extern Lisp_Object Qratiop;
202 EXFUN (Fratiop, 1); 202 EXFUN (Fratiop, 1);
203 203
204 204
205 /******************************** Rationals *********************************/ 205 /******************************** Rationals *********************************/
206 extern Lisp_Object Qrationalp; 206 extern Lisp_Object Qrationalp;
260 extern Lisp_Object Vdefault_float_precision; 260 extern Lisp_Object Vdefault_float_precision;
261 extern bigfloat scratch_bigfloat, scratch_bigfloat2; 261 extern bigfloat scratch_bigfloat, scratch_bigfloat2;
262 262
263 #else /* !HAVE_BIGFLOAT */ 263 #else /* !HAVE_BIGFLOAT */
264 264
265 extern Lisp_Object Qbigfloatp;
266 #define BIGFLOATP(x) 0 265 #define BIGFLOATP(x) 0
267 #define CHECK_BIGFLOAT(x) dead_wrong_type_argument (Qbigfloatp, x) 266 #define CHECK_BIGFLOAT(x) dead_wrong_type_argument (Qbigfloatp, x)
268 #define CONCHECK_BIGFLOAT(x) dead_wrong_type_argument (Qbigfloatp, x) 267 #define CONCHECK_BIGFLOAT(x) dead_wrong_type_argument (Qbigfloatp, x)
269 typedef void bigfloat; 268 typedef void bigfloat;
270 #define make_bigfloat(f) This XEmacs does not support bigfloats 269 #define make_bigfloat(f) This XEmacs does not support bigfloats
271 #define make_bigfloat_bf(f) This XEmacs does not support bigfloast 270 #define make_bigfloat_bf(f) This XEmacs does not support bigfloast
272 271
273 #endif /* HAVE_BIGFLOAT */ 272 #endif /* HAVE_BIGFLOAT */
274 273
274 extern Lisp_Object Qbigfloatp;
275 EXFUN (Fbigfloatp, 1); 275 EXFUN (Fbigfloatp, 1);
276 276
277 /********************************* Floating *********************************/ 277 /********************************* Floating *********************************/
278 extern Lisp_Object Qfloatingp, Qbigfloat; 278 extern Lisp_Object Qfloatingp, Qbigfloat;
279 extern Lisp_Object Qread_default_float_format, Vread_default_float_format; 279 extern Lisp_Object Qread_default_float_format, Vread_default_float_format;