|
| Writable_Database (joedb::Buffered_File &file, joedb::Readonly_Journal::Check check=joedb::Readonly_Journal::Check::all, joedb::Commit_Level commit_level=joedb::Commit_Level::no_commit) |
|
const joedb::Readonly_Journal & | get_journal () const |
|
std::string | read_blob_data (joedb::Blob blob) const |
|
joedb::Blob | write_blob_data (const std::string &data) final |
|
int64_t | ahead_of_checkpoint () const |
|
void | checkpoint_no_commit () |
|
void | checkpoint_half_commit () |
|
void | checkpoint_full_commit () |
|
void | checkpoint () |
|
void | checkpoint (joedb::Commit_Level commit_level) final |
|
void | write_comment (const std::string &comment) |
|
void | write_timestamp () |
|
void | write_timestamp (int64_t timestamp) |
|
void | write_valid_data () |
|
void | flush () override |
|
void | clear_city_table () |
|
id_of_city | new_city () |
|
id_of_city | new_vector_of_city (size_t size) |
|
id_of_city | new_city (const std::string &field_value_of_name) |
|
void | delete_city (id_of_city record) |
|
void | delete_vector_of_city (id_of_city v, size_t size) |
|
void | set_name (id_of_city record, const std::string &field_value_of_name) |
|
template<typename F > |
void | update_vector_of_name (id_of_city record, size_t size, F f) |
|
void | clear_person_table () |
|
id_of_person | new_person () |
|
id_of_person | new_vector_of_person (size_t size) |
|
id_of_person | new_person (const std::string &field_value_of_first_name, const std::string &field_value_of_last_name, id_of_city field_value_of_home) |
|
void | delete_person (id_of_person record) |
|
void | delete_vector_of_person (id_of_person v, size_t size) |
|
void | set_first_name (id_of_person record, const std::string &field_value_of_first_name) |
|
template<typename F > |
void | update_vector_of_first_name (id_of_person record, size_t size, F f) |
|
void | set_last_name (id_of_person record, const std::string &field_value_of_last_name) |
|
template<typename F > |
void | update_vector_of_last_name (id_of_person record, size_t size, F f) |
|
void | set_home (id_of_person record, id_of_city field_value_of_home) |
|
template<typename F > |
void | update_vector_of_home (id_of_person record, size_t size, F f) |
|
void | set_max_record_id (size_t record_id) |
|
bool | is_valid (id_of_city id) const |
|
bool | is_valid (id_of_person id) const |
|
| Database () |
|
int64_t | get_schema_checkpoint () const |
|
void | initialize_with_readonly_journal (joedb::Readonly_Journal &journal) |
|
container_of_city | get_city_table () const |
|
id_of_city | next (id_of_city id) const |
|
id_of_city | previous (id_of_city id) const |
|
template<class Comparator > |
std::vector< id_of_city > | sorted_city (Comparator comparator) const |
|
const std::string & | get_name (id_of_city record) const |
|
container_of_person | get_person_table () const |
|
id_of_person | next (id_of_person id) const |
|
id_of_person | previous (id_of_person id) const |
|
template<class Comparator > |
std::vector< id_of_person > | sorted_person (Comparator comparator) const |
|
const std::string & | get_first_name (id_of_person record) const |
|
const std::string & | get_last_name (id_of_person record) const |
|
id_of_city | get_home (id_of_person record) const |
|
const std::map< std::string, id_of_city > & | get_index_of_city_by_name () |
|
const std::multimap< std::tuple< std::string, std::string >, id_of_person > & | get_index_of_person_by_name () |
|
id_of_city | next_city_by_name (id_of_city id) |
|
id_of_city | previous_city_by_name (id_of_city id) |
|
id_of_city | find_city_by_name (const std::string &field_value_of_name) const |
|
range_of_person_by_name | find_person_by_name (const std::string &field_value_of_last_name, const std::string &field_value_of_first_name) const |
|
| Writable (Commit_Level default_commit_level=Commit_Level::no_commit) |
|
virtual void | drop_table (Table_Id table_id) |
|
virtual void | rename_table (Table_Id table_id, const std::string &name) |
|
virtual void | add_field (Table_Id table_id, const std::string &name, Type type) |
|
virtual void | drop_field (Table_Id table_id, Field_Id field_id) |
|
virtual void | rename_field (Table_Id table_id, Field_Id field_id, const std::string &name) |
|
Commit_Level | get_default_commit_level () const |
|
void | default_checkpoint () |
|
virtual void | insert_into (Table_Id table_id, Record_Id record_id) |
|
virtual void | insert_vector (Table_Id table_id, Record_Id record_id, size_t size) |
|
virtual void | delete_from (Table_Id table_id, Record_Id record_id) |
|
virtual void | on_blob (Blob blob) |
|
virtual bool | wants_blob_data () const |
|
virtual | ~Writable ()=default |
|
|
template<typename E = joedb::Exception> |
static void | throw_exception (const std::string &message) |
|
static id_of_city | null_city () |
|
static id_of_person | null_person () |
|
size_t | max_record_id |
|
Table_Id | current_table_id = Table_Id{0} |
|
bool | is_valid_record_id_for_city (Record_Id record_id) const |
|
bool | is_valid_record_id_for_person (Record_Id record_id) const |
|
void | remove_index_of_city_by_name (Record_Id record_id) |
|
void | add_index_of_city_by_name (Record_Id record_id) |
|
void | remove_index_of_person_by_name (Record_Id record_id) |
|
void | add_index_of_person_by_name (Record_Id record_id) |
|
void | internal_delete_city (Record_Id record_id) |
|
void | internal_delete_person (Record_Id record_id) |
|
void | internal_insert_city (Record_Id record_id) |
|
void | internal_vector_insert_city (Record_Id record_id, size_t size) |
|
void | internal_insert_person (Record_Id record_id) |
|
void | internal_vector_insert_person (Record_Id record_id, size_t size) |
|
void | internal_update_city__name (Record_Id record_id, const std::string &field_value_of_name) |
|
void | internal_update_vector_city__name (Record_Id record_id, size_t size, const std::string *value) |
|
void | internal_update_person__first_name (Record_Id record_id, const std::string &field_value_of_first_name) |
|
void | internal_update_vector_person__first_name (Record_Id record_id, size_t size, const std::string *value) |
|
void | internal_update_person__last_name (Record_Id record_id, const std::string &field_value_of_last_name) |
|
void | internal_update_vector_person__last_name (Record_Id record_id, size_t size, const std::string *value) |
|
void | internal_update_person__home (Record_Id record_id, id_of_city field_value_of_home) |
|
void | internal_update_vector_person__home (Record_Id record_id, size_t size, const id_of_city *value) |
|
void | delete_from (Table_Id table_id, Record_Id record_id) final |
|
void | insert_into (Table_Id table_id, Record_Id record_id) final |
|
void | insert_vector (Table_Id table_id, Record_Id record_id, size_t size) final |
|
void | update_string (Table_Id table_id, Record_Id record_id, Field_Id field_id, const std::string &value) final |
|
void | update_reference (Table_Id table_id, Record_Id record_id, Field_Id field_id, joedb::Record_Id value) final |
|
void | update_vector_string (Table_Id table_id, Record_Id record_id, Field_Id field_id, size_t size, const std::string *value) final |
|
void | update_vector_reference (Table_Id table_id, Record_Id record_id, Field_Id field_id, size_t size, const joedb::Record_Id *value) final |
|
std::string * | get_own_string_storage (Table_Id table_id, Record_Id record_id, Field_Id field_id, size_t &capacity) final |
|
joedb::Record_Id * | get_own_reference_storage (Table_Id table_id, Record_Id record_id, Field_Id field_id, size_t &capacity) final |
|
void | comment (const std::string &comment) override |
|
void | timestamp (int64_t timestamp) override |
|
void | valid_data () final |
|
bool | requires_schema_upgrade () const |
|
void | check_schema () |
|
void | create_table (const std::string &name) override |
|
void | drop_table (Table_Id table_id) final |
|
void | rename_table (Table_Id table_id, const std::string &name) final |
|
void | add_field (Table_Id table_id, const std::string &name, joedb::Type type) override |
|
void | drop_field (Table_Id table_id, Field_Id field_id) final |
|
void | rename_field (Table_Id table_id, Field_Id field_id, const std::string &name) final |
|
void | custom (const std::string &name) override |
|
detail::data_of_city | storage_of_city |
|
detail::data_of_person | storage_of_person |
|
std::map< std::string, id_of_city > | index_of_city_by_name |
|
std::multimap< std::tuple< std::string, std::string >, id_of_person > | index_of_person_by_name |
|
bool | upgrading_schema = false |
|
joedb::Memory_File | schema_file |
|
joedb::Writable_Journal | schema_journal |
|
Definition at line 29 of file Writable_Database.h.