Macaulay2 Engine
Loading...
Searching...
No Matches
BasicPolyListStreamCollector Class Reference

Streaming consumer that builds a BasicPolyList from per-term callbacks, matching the mathicgb / mgb stream interface. More...

#include <BasicPolyList.hpp>

Public Types

using Coefficient = mpz_class
using VarIndex = int32_t
using Exponent = int32_t
using Component = int32_t
using ModulusType = int32_t

Public Member Functions

 BasicPolyListStreamCollector ()
 BasicPolyListStreamCollector (Coefficient modulus, VarIndex varCount, Component comCount)
 ~BasicPolyListStreamCollector ()=default
BasicPolyList value ()
ModulusType modulus () const
VarIndex varCount () const
Component comCount () const
void idealBegin (size_t polyCount)
void appendPolynomialBegin (size_t termCount)
void appendTermBegin (Component com)
void appendExponent (VarIndex index, Exponent exponent)
void appendTermDone (const Coefficient &coefficient)
void appendPolynomialDone ()
void idealDone ()

Private Attributes

BasicPolyList mValue
ModulusType mModulus
VarIndex mVarCount
Component mComCount
long mCurrentPoly
long mCurrentTerm
long mSizeEntryInMonomial

Detailed Description

Streaming consumer that builds a BasicPolyList from per-term callbacks, matching the mathicgb / mgb stream interface.

Note
AI-generated documentation. Verify against the source before relying on it.

Receives appendPolynomialBegin / appendTermBegin / appendExponent / appendTermDone / appendPolynomialDone calls from a polynomial producer (typically the mathicgb stream parser) and assembles the result into mValue. Stores the declared modulus, variable count, and component count so the caller can ask the collector to echo them back even though the BasicPoly representation itself does not use them. Used for portable polynomial I/O outside the typed Ring machinery.

Definition at line 75 of file BasicPolyList.hpp.


The documentation for this class was generated from the following files: