#pragma once #include #include #include namespace db { namespace statements { namespace builder { class StatementBuilder; class InsertStatementBuilder; class SelectStatementBuilder; class Statement { public: Statement() = default; friend class InsertStatementBuilder; friend class SelectStatementBuilder; friend std::ostream &operator<<(std::ostream &os, const Statement &s); static InsertStatementBuilder insert(); static SelectStatementBuilder select(); std::string str() const; private: std::string body; }; } } }