LeviLamina
Loading...
Searching...
No Matches
Table.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/raknet/data_structures/BPlusTree.h"
7#include "mc/deps/raknet/data_structures/List.h"
8
9namespace DataStructures {
10
11class Table {
12public:
13 // Table inner types declare
14 // clang-format off
15 struct Cell;
16 struct ColumnDescriptor;
17 struct FilterQuery;
18 struct Row;
19 struct SortQuery;
20 // clang-format on
21
22 // Table inner types define
23 enum class ColumnType : int {
24 Numeric = 0,
25 String = 1,
26 Binary = 2,
27 Pointer = 3,
28 };
29
30 enum class FilterQueryType : int {
31 Equal = 0,
32 NotEqual = 1,
33 GreaterThan = 2,
34 GreaterThanEq = 3,
35 LessThan = 4,
36 LessThanEq = 5,
37 IsEmpty = 6,
38 NotEmpty = 7,
39 };
40
41 enum class SortQueryType : int {
42 IncreasingOrder = 0,
43 DecreasingOrder = 1,
44 };
45
46 struct Cell {
47 public:
48 // member variables
49 // NOLINTBEGIN
50 ::ll::TypedStorage<1, 1, bool> isEmpty;
51 ::ll::TypedStorage<8, 8, double> i;
52 ::ll::TypedStorage<8, 8, char*> c;
53 ::ll::TypedStorage<8, 8, void*> ptr;
54 // NOLINTEND
55 };
56
58 public:
59 // member variables
60 // NOLINTBEGIN
61 ::ll::TypedStorage<1, 64, char[64]> columnName;
62 ::ll::TypedStorage<4, 4, ::DataStructures::Table::ColumnType> columnType;
63 // NOLINTEND
64 };
65
66 struct FilterQuery {
67 public:
68 // member variables
69 // NOLINTBEGIN
70 ::ll::TypedStorage<1, 64, char[64]> columnName;
71 ::ll::TypedStorage<4, 4, uint> columnIndex;
72 ::ll::TypedStorage<8, 8, ::DataStructures::Table::Cell*> cellValue;
73 ::ll::TypedStorage<4, 4, ::DataStructures::Table::FilterQueryType> operation;
74 // NOLINTEND
75 };
76
77 struct Row {
78 public:
79 // member variables
80 // NOLINTBEGIN
81 ::ll::TypedStorage<8, 16, ::DataStructures::List<::DataStructures::Table::Cell*>> cells;
82 // NOLINTEND
83 };
84
85 struct SortQuery {
86 public:
87 // member variables
88 // NOLINTBEGIN
89 ::ll::TypedStorage<4, 4, uint> columnIndex;
90 ::ll::TypedStorage<4, 4, ::DataStructures::Table::SortQueryType> operation;
91 // NOLINTEND
92 };
93
94public:
95 // member variables
96 // NOLINTBEGIN
97 ::ll::TypedStorage<8, 48, ::DataStructures::BPlusTree<uint, ::DataStructures::Table::Row*, 16>> rows;
98 ::ll::TypedStorage<8, 16, ::DataStructures::List<::DataStructures::Table::ColumnDescriptor>> columns;
99 // NOLINTEND
100};
101
102} // namespace DataStructures
Definition Table.h:11
Definition Table.h:46
Definition Table.h:77