Joedb 9.1.4
The Journal-Only Embedded Database
Loading...
Searching...
No Matches
Raw_Dump_Writable.h
Go to the documentation of this file.
1#ifndef joedb_Raw_Dump_Writable_declared
2#define joedb_Raw_Dump_Writable_declared
3
4#include "joedb/Writable.h"
5
6#include <iostream>
7
8namespace joedb
9{
10 /// @ingroup ui
12 {
13 private:
14 std::ostream &out;
15
16 void write_type(Type type);
17
18 public:
19 Raw_Dump_Writable(std::ostream &out): out(out) {}
20
21 void create_table(const std::string &name) final;
22 void drop_table(Table_Id table_id) final;
23 void rename_table(Table_Id table_id, const std::string &name) final;
24 void add_field
25 (
26 Table_Id table_id,
27 const std::string &name,
28 Type type
29 ) final;
30 void drop_field(Table_Id table_id, Field_Id field_id) final;
31 void rename_field
32 (
33 Table_Id table_id,
34 Field_Id field_id,
35 const std::string &name
36 ) final;
37 void custom(const std::string &name) final;
38 void comment(const std::string &comment) final;
39 void timestamp(int64_t timestamp) final;
40 void valid_data() final;
41 void insert_into(Table_Id table_id, Record_Id record_id) final;
42 void insert_vector
43 (
44 Table_Id table_id,
45 Record_Id record_id,
46 size_t size
47 ) final;
48 void delete_from(Table_Id table_id, Record_Id record_id) final;
49
50 #define TYPE_MACRO(type, return_type, type_id, R, W)\
51 void update_##type_id\
52 (\
53 Table_Id table_id,\
54 Record_Id record_id,\
55 Field_Id field_id,\
56 return_type value\
57 ) final;\
58 void update_vector_##type_id\
59 (\
60 Table_Id table_id,\
61 Record_Id record_id,\
62 Field_Id field_id,\
63 size_t size,\
64 const type *value\
65 ) final;
66 #include "joedb/TYPE_MACRO.h"
67
68 bool wants_blob_data() const final {return true;}
69 Blob write_blob_data(const std::string &data) final;
70
72 };
73}
74
75#endif
void comment(const std::string &comment) final
void rename_field(Table_Id table_id, Field_Id field_id, const std::string &name) final
void delete_from(Table_Id table_id, Record_Id record_id) final
void create_table(const std::string &name) final
void drop_table(Table_Id table_id) final
void insert_into(Table_Id table_id, Record_Id record_id) final
bool wants_blob_data() const final
Raw_Dump_Writable(std::ostream &out)
void add_field(Table_Id table_id, const std::string &name, Type type) final
void timestamp(int64_t timestamp) final
void drop_field(Table_Id table_id, Field_Id field_id) final
void insert_vector(Table_Id table_id, Record_Id record_id, size_t size) final
void rename_table(Table_Id table_id, const std::string &name) final
Blob write_blob_data(const std::string &data) final
void custom(const std::string &name) final
Definition Blob.h:7