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

◆ IM2_MutableMatrix_set_entry()

M2_bool IM2_MutableMatrix_set_entry ( MutableMatrix * M,
int r,
int c,
const RingElement * a )

Definition at line 247 of file mutable-matrix.cpp.

251{
252 const Ring *R = M->get_ring();
253 if (R != a->get_ring())
254 {
255 ERROR("expected same ring");
256 return 0;
257 }
258 if (r < 0 || r >= M->n_rows())
259 {
260 ERROR("row index %d out of range 0..%d", r, M->n_rows() - 1);
261 return 0;
262 }
263 if (c < 0 || c >= M->n_cols())
264 {
265 ERROR("column index %d out of range 0..%d", c, M->n_cols() - 1);
266 return 0;
267 }
268
269 M->set_entry(r, c, a->get_value());
270 return 1;
271}
virtual size_t n_rows() const =0
virtual size_t n_cols() const =0
virtual const Ring * get_ring() const =0
virtual bool set_entry(size_t r, size_t c, const ring_elem a)=0
ring_elem get_value() const
Definition relem.hpp:79
const Ring * get_ring() const
Definition relem.hpp:81
xxx xxx xxx
Definition ring.hpp:102
const int ERROR
Definition m2-mem.cpp:55

References ERROR, MutableMatrix::get_ring(), RingElement::get_ring(), RingElement::get_value(), MutableMatrix::n_cols(), MutableMatrix::n_rows(), and MutableMatrix::set_entry().