Cyclone Scheme  0.20

◆ return_exact_double_op

#define return_exact_double_op (   data,
  cont,
  OP,
 
)
Value:
int i = 0; \
Cyc_check_num(data, z); \
if (obj_is_int(z)) { \
i = obj_obj2int(z); \
} else if (type_of(z) == integer_tag) { \
i = (int)OP(((integer_type *)z)->value); \
} else if (type_of(z) == bignum_tag) { \
return_closcall1(data, cont, z); \
} else { \
i = (int)OP(((double_type *)z)->value); \
} \
return_closcall1(data, cont, obj_int2obj(i))
#define obj_int2obj(c)
Definition: types.h:618
Definition: types.h:61
Double-precision floating point type, also known as a flonum.
Definition: types.h:876
#define obj_obj2int(x)
Definition: types.h:612
#define obj_is_int(x)
Definition: types.h:606
#define type_of(obj)
Definition: types.h:91
Deprecated - boxed integers.
Definition: types.h:807
Definition: types.h:62