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

◆ find_or_append_column()

int F4GB::find_or_append_column ( packed_monomial m)
private

Definition at line 165 of file f4.cpp.

166{
167 packed_monomial new_m;
168 if (mMonomialHashTable.find_or_insert(m, new_m)) return static_cast<int>(new_m[-1]);
169 // At this point, m is a new monomial to be placed as a column
170 m = next_monom;
171 mMonomialMemoryBlock.intern(1 + mMonomialInfo->monomial_size(m));
172 next_monom = mMonomialMemoryBlock.reserve(1 + mMonomialInfo->max_monomial_size());
173 next_monom++;
174 return new_column(m);
175}
F4MemoryBlock< monomial_word > mMonomialMemoryBlock
Definition f4.hpp:188
monomial_word * next_monom
Definition f4.hpp:189
const MonomialInfo * mMonomialInfo
Definition f4.hpp:157
MonomialHashTable< MonomialInfo > mMonomialHashTable
Definition f4.hpp:187
int new_column(packed_monomial m)
Definition f4.cpp:153
monomial_word * packed_monomial
Definition moninfo.hpp:78

References mMonomialHashTable, mMonomialInfo, mMonomialMemoryBlock, new_column(), and next_monom.

Referenced by load_gen().