comparison src/number.c @ 1996:ea0e08ca2c78

[xemacs-hg @ 2004-04-07 14:55:31 by james] Return a Lisp boolean, not a C boolean, from Fevenp and Foddp.
author james
date Wed, 07 Apr 2004 14:55:34 +0000
parents 4e6a63799f08
children cc5b615380f8
comparison
equal deleted inserted replaced
1995:4e6a63799f08 1996:ea0e08ca2c78
122 Return t if INTEGER is even, nil otherwise. 122 Return t if INTEGER is even, nil otherwise.
123 */ 123 */
124 (integer)) 124 (integer))
125 { 125 {
126 CONCHECK_INTEGER (integer); 126 CONCHECK_INTEGER (integer);
127 return BIGNUMP (integer) 127 return (BIGNUMP (integer)
128 ? bignum_evenp (XBIGNUM_DATA (integer)) 128 ? bignum_evenp (XBIGNUM_DATA (integer))
129 : XTYPE (integer) == Lisp_Type_Int_Even; 129 : XTYPE (integer) == Lisp_Type_Int_Even) ? Qt : Qnil;
130 } 130 }
131 131
132 DEFUN ("odd", Foddp, 1, 1, 0, /* 132 DEFUN ("odd", Foddp, 1, 1, 0, /*
133 Return t if INTEGER is odd, nil otherwise. 133 Return t if INTEGER is odd, nil otherwise.
134 */ 134 */
135 (integer)) 135 (integer))
136 { 136 {
137 CONCHECK_INTEGER (integer); 137 CONCHECK_INTEGER (integer);
138 return BIGNUMP (integer) 138 return (BIGNUMP (integer)
139 ? bignum_oddp (XBIGNUM_DATA (integer)) 139 ? bignum_oddp (XBIGNUM_DATA (integer))
140 : XTYPE (integer) == Lisp_Type_Int_Odd; 140 : XTYPE (integer) == Lisp_Type_Int_Odd) ? Qt : Qnil;
141 } 141 }
142 142
143 143
144 /********************************** Ratios **********************************/ 144 /********************************** Ratios **********************************/
145 #ifdef HAVE_RATIO 145 #ifdef HAVE_RATIO