You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

37 lines
929 B

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