const cl_RA operator() (const cl_RA& y) const;
public: // Ability to place an object at a given address.
void* operator new (size_t size) { return malloc_hook(size); }
- void* operator new (size_t size, cl_UP_RA* ptr) { (void)size; return ptr; }
+ void* operator new (size_t size, void* ptr) { (void)size; return ptr; }
void operator delete (void* ptr) { free_hook(ptr); }
};
class cl_heap_univpoly_rational_ring : public cl_heap_univpoly_ring {
SUBCLASS_cl_heap_univpoly_ring()
// High-level operations.
- void fprint (cl_ostream stream, const cl_UP_RA& x)
+ void fprint (std::ostream& stream, const cl_UP_RA& x)
{
cl_heap_univpoly_ring::fprint(stream,x);
}
- cl_boolean equal (const cl_UP_RA& x, const cl_UP_RA& y)
+ bool equal (const cl_UP_RA& x, const cl_UP_RA& y)
{
return cl_heap_univpoly_ring::equal(x,y);
}
{
return The2(cl_UP_RA)(cl_heap_univpoly_ring::zero());
}
- cl_boolean zerop (const cl_UP_RA& x)
+ bool zerop (const cl_UP_RA& x)
{
return cl_heap_univpoly_ring::zerop(x);
}
{
return cl_heap_univpoly_ring::degree(x);
}
+ sintL ldegree (const cl_UP_RA& x)
+ {
+ return cl_heap_univpoly_ring::ldegree(x);
+ }
const cl_UP_RA monomial (const cl_RA& x, uintL e)
{
return The2(cl_UP_RA)(cl_heap_univpoly_ring::monomial(cl_ring_element(cl_RA_ring,x),e));