Macaulay2 Engine
Loading...
Searching...
No Matches

◆ from_rational()

bool PolyRing::from_rational ( mpq_srcptr q,
ring_elem & result ) const
virtual

Implements Ring.

Definition at line 194 of file poly.cpp.

195{
196 ring_elem a;
197 bool ok = K_->from_rational(q, a);
198 if (not ok) return false;
199 if (K_->is_zero(a))
200 {
202 }
203 else
204 {
205 Nterm *resultpoly = new_term();
206 resultpoly->coeff = a;
207 M_->one(resultpoly->monom);
208 result = resultpoly;
209 }
210 return true;
211}
Nterm * new_term() const
Definition poly.cpp:146
const Ring * K_
Definition polyring.hpp:123
const Monoid * M_
Definition polyring.hpp:124
VALGRIND_MAKE_MEM_DEFINED & result(result)
#define ZERO_RINGELEM
Definition ring.hpp:677
ring_elem coeff
Definition ringelem.hpp:158
int monom[1]
Definition ringelem.hpp:160

References Nterm::coeff, PolynomialRing::K_, PolynomialRing::M_, Nterm::monom, new_term(), result(), and ZERO_RINGELEM.