|
Macaulay2 Engine
|
Mutable builder used to assemble an immutable Matrix one column (or one term) at a time. More...
#include <matrix-con.hpp>
Public Member Functions | |
| MatrixConstructor () | |
| MatrixConstructor (const FreeModule *target, int ncols) | |
| MatrixConstructor (const FreeModule *target, const FreeModule *source, const_monomial deg=nullptr) | |
| void | append (vec v) |
| void | append (vec v, const_monomial deg) |
| void | set_entry (int r, int c, ring_elem a) |
| void | set_column (int c, vec v) |
| void | compute_column_degrees () |
| void | set_column_degree (int i, const_monomial deg) |
| void | set_matrix_degree (const_monomial deg) |
| Matrix * | to_matrix () |
| void | debugDisplay () const |
Private Member Functions | |
| VECTOR (vec) entries | |
| void | compute_column_degree (int i) |
Private Attributes | |
| const Ring * | R |
| const FreeModule * | rows |
| const FreeModule * | cols |
| bool | cols_frozen |
| const_monomial | deg |
Mutable builder used to assemble an immutable Matrix one column (or one term) at a time.
Held while the matrix is in flux: tracks the target / source FreeModules, the in-progress column vectors in entries, a shared degree shift deg, and the cols_frozen flag that locks the source free module once the caller commits to a column count. to_matrix() (declared further down) snapshots the current state into a fresh Matrix*, after which the MatrixConstructor can be discarded or refilled.
Definition at line 59 of file matrix-con.hpp.