You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-01 06:46:55 +03:00
MCOL-4530: toCppCode() method for ParseTree and TreeNode (#2777)
* toCppCode for ParseTree and TreeNode * generated tree is compiling * Put tree constructors into tests * Minor fixes * Fixed parse + some constructors * Fixed includes, removed debug and old data * Hopefully fix clang errors * Forgot an override * More overrides
This commit is contained in:
@ -64,28 +64,41 @@ class SimpleColumn_Decimal : public SimpleColumn
|
||||
{
|
||||
}
|
||||
|
||||
inline virtual SimpleColumn_Decimal* clone() const
|
||||
inline virtual SimpleColumn_Decimal* clone() const override
|
||||
{
|
||||
return new SimpleColumn_Decimal<len>(*this);
|
||||
}
|
||||
|
||||
/** Evaluate methods */
|
||||
virtual inline const std::string& getStrVal(rowgroup::Row& row, bool& isNull);
|
||||
virtual inline int64_t getIntVal(rowgroup::Row& row, bool& isNull);
|
||||
virtual inline float getFloatVal(rowgroup::Row& row, bool& isNull);
|
||||
virtual inline double getDoubleVal(rowgroup::Row& row, bool& isNull);
|
||||
virtual inline long double getLongDoubleVal(rowgroup::Row& row, bool& isNull);
|
||||
virtual inline IDB_Decimal getDecimalVal(rowgroup::Row& row, bool& isNull);
|
||||
virtual inline const std::string& getStrVal(rowgroup::Row& row, bool& isNull) override;
|
||||
virtual inline int64_t getIntVal(rowgroup::Row& row, bool& isNull) override;
|
||||
virtual inline float getFloatVal(rowgroup::Row& row, bool& isNull) override;
|
||||
virtual inline double getDoubleVal(rowgroup::Row& row, bool& isNull) override;
|
||||
virtual inline long double getLongDoubleVal(rowgroup::Row& row, bool& isNull) override;
|
||||
virtual inline IDB_Decimal getDecimalVal(rowgroup::Row& row, bool& isNull) override;
|
||||
|
||||
/** The serialize interface */
|
||||
virtual void serialize(messageqcpp::ByteStream&) const;
|
||||
virtual void unserialize(messageqcpp::ByteStream&);
|
||||
virtual void serialize(messageqcpp::ByteStream&) const override;
|
||||
virtual void unserialize(messageqcpp::ByteStream&) override;
|
||||
uint64_t fNullVal;
|
||||
|
||||
virtual std::string toCppCode(IncludeSet& includes) const override;
|
||||
|
||||
private:
|
||||
void setNullVal();
|
||||
};
|
||||
|
||||
template <int len>
|
||||
std::string SimpleColumn_Decimal<len>::toCppCode(IncludeSet& includes) const
|
||||
{
|
||||
includes.insert("simplecolumn_decimal.h");
|
||||
std::stringstream ss;
|
||||
ss << "SimpleColumn_Decimal<" << len << ">(" << std::quoted(fSchemaName) << ", " << std::quoted(fTableName) << ", " <<
|
||||
std::quoted(fColumnName) << ", " << fisColumnStore << ", " << sessionID() << ")";
|
||||
|
||||
return ss.str();
|
||||
}
|
||||
|
||||
template <int len>
|
||||
SimpleColumn_Decimal<len>::SimpleColumn_Decimal() : SimpleColumn()
|
||||
{
|
||||
|
Reference in New Issue
Block a user