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.
 
 
 
 

36 lines
849 B

#pragma once
#include <iostream>
#include <string>
#include <sstream>
namespace db {
namespace migrations {
namespace builder {
class TableBuilder;
class CreateTableBuilder;
class AlterTableBuilder;
class DropTableBuilder;
class Table {
public:
Table() = default;
friend class CreateTableBuilder;
friend class AlterTableBuilder;
friend class DropTableBuilder;
friend std::ostream &operator<<(std::ostream &os, const Table &t);
static CreateTableBuilder create(const std::string table_name);
static AlterTableBuilder alter(const std::string table_name);
static DropTableBuilder drop(const std::string table_name);
std::string str() const;
private:
std::string header;
std::string body;
};
}
}
}