namespace cln {
-static void R_fprint (cl_heap_ring* R, cl_ostream stream, const _cl_ring_element& x)
+static void R_fprint (cl_heap_ring* R, std::ostream& stream, const _cl_ring_element& x)
{
unused R;
fprint(stream,The(cl_R)(x));
}
-static cl_boolean R_equal (cl_heap_ring* R, const _cl_ring_element& x, const _cl_ring_element& y)
+static bool R_equal (cl_heap_ring* R, const _cl_ring_element& x, const _cl_ring_element& y)
{
unused R;
return equal(The(cl_R)(x),The(cl_R)(y));
return _cl_ring_element(R, (cl_R)0);
}
-static cl_boolean R_zerop (cl_heap_ring* R, const _cl_ring_element& x)
+static bool R_zerop (cl_heap_ring* R, const _cl_ring_element& x)
{
unused R;
// Here we return true only if x is the *exact* zero. Because we
return _cl_ring_element(R, expt(The(cl_R)(x),y));
}
-static cl_boolean cl_R_p (const cl_number& x)
+static bool cl_R_p (const cl_number& x)
{
- return (cl_boolean)
- (!x.pointer_p()
- || (x.pointer_type()->flags & cl_class_flags_subclass_real) != 0
- );
+ return (!x.pointer_p()
+ || (x.pointer_type()->flags & cl_class_flags_subclass_real) != 0);
}
static cl_ring_setops R_setops = {
};
// Constructor.
+template <>
inline cl_real_ring::cl_specialized_number_ring ()
: cl_number_ring (new cl_heap_real_ring()) {}