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.

31 lines
761 B

  1. #include "Table.h"
  2. #include "TableBuilder.h"
  3. namespace db {
  4. namespace migrations {
  5. namespace builder {
  6. class CreateTableBuilder;
  7. CreateTableBuilder Table::create(std::string table_name) {
  8. return CreateTableBuilder{table_name};
  9. }
  10. AlterTableBuilder Table::alter(std::string table_name) {
  11. return AlterTableBuilder{table_name};
  12. }
  13. DropTableBuilder Table::drop(std::string table_name) {
  14. return DropTableBuilder{table_name};
  15. }
  16. std::string Table::str() const {
  17. return header + "\n" + body + "\n";
  18. }
  19. std::ostream &operator<<(std::ostream &os, const Table &t) {
  20. return os << t.header << std::endl
  21. << t.body << std::endl;
  22. }
  23. }
  24. }
  25. }