eckit::sql::SQLDistinctOutput class

Base classes

class SQLOutput

Constructors, destructors, conversion operators

SQLDistinctOutput(SQLOutput& output)
~SQLDistinctOutput() override

Private functions

void print(std::ostream&) const override
void reset() override
void flush() override
auto cachedNext() -> bool override
auto output(const expression::Expressions&) -> bool override
void preprepare(SQLSelect&) override
void prepare(SQLSelect&) override
void updateTypes(SQLSelect&) override
void cleanup(SQLSelect&) override
auto count() -> unsigned long long override
void outputReal(double, bool) override
void outputDouble(double, bool) override
void outputInt(double, bool) override
void outputUnsignedInt(double, bool) override
void outputString(const char*, size_t, bool) override
void outputBitfield(double, bool) override

Function documentation

bool eckit::sql::SQLDistinctOutput::cachedNext() override private

If an iterator in the chain has started caching output (e.g. the OrderBy iterator), start flushing those through. Returns true when row is output, false otherwise.