1#ifndef joedb_Database_Schema_declared
2#define joedb_Database_Schema_declared
23 const std::string &name
33 const std::map<Table_Id, std::string> &
get_tables()
const override
38 const std::map<Field_Id, std::string> &
get_fields
51 #define TYPE_MACRO(type, return_type, type_id, R, W)\
52 const type &get_##type_id\
69 const std::string &name,
std::map< Table_Id, std::string > table_names
void create_table(const std::string &name) override
const Table & get_table(Table_Id table_id) const
static void check_identifier(const char *message, const std::string &name)
virtual ~Database_Schema() override
void drop_table(Table_Id table_id) override
void add_field(Table_Id table_id, const std::string &name, Type type) override
const Compact_Freedom_Keeper & get_freedom(Table_Id table_id) const override
void rename_field(Table_Id, Field_Id, const std::string &name) override
void rename_table(Table_Id table_id, const std::string &name) override
const std::map< Table_Id, std::string > & get_tables() const override
void drop_field(Table_Id table_id, Field_Id field_id) override
Table_Id current_table_id
std::map< Table_Id, Table > tables
const Type & get_field_type(Table_Id table_id, Field_Id field_id) const override
const std::map< Field_Id, std::string > & get_fields(Table_Id table_id) const override