xale-db 1.0
minimal SQL engine, written in c++
Loading...
Searching...
No Matches
ResultSet.h
Go to the documentation of this file.
1#ifndef DATA_STRUCTURE_RESULT_SET_H
2#define DATA_STRUCTURE_RESULT_SET_H
3
6
8{
12 class ResultSet : public IDataTemplate
13 {
14 public:
19 explicit ResultSet(const std::string& name = "result");
20
25 const std::string& getName() const override;
26
31 const std::vector<ColumnDefinition>& getSchema() const override;
32
37 const std::vector<Row>& getRows() const override;
38
43 size_t getRowCount() const override;
44
49 size_t getColumnCount() const override;
50
55 bool isEmpty() const override;
56
61 bool isMutable() const override;
62
67 void addColumn(const ColumnDefinition& column);
68
73 void addRow(const Row& row);
74
80 const Row& getRow(size_t index) const;
81
82 private:
83 std::string _name;
84 std::vector<ColumnDefinition> _schema;
85 std::vector<Row> _rows;
86 };
87}
88
89#endif // EXECUTION_RESULT_SET_H
Abstract base class for data collections Base for Table, ResultSet, View, Index, etc.
Definition IDataTemplate.h:18
bool isEmpty() const override
Implements IDataTemplate interface.
Definition ResultSet.cpp:34
void addRow(const Row &row)
Adds a row to the ResultSet.
Definition ResultSet.cpp:49
void addColumn(const ColumnDefinition &column)
Adds a column to the ResultSet.
Definition ResultSet.cpp:44
const Row & getRow(size_t index) const
Gets a row by index.
Definition ResultSet.cpp:54
const std::vector< Row > & getRows() const override
Implements IDataTemplate interface.
Definition ResultSet.cpp:19
size_t getColumnCount() const override
Implements IDataTemplate interface.
Definition ResultSet.cpp:29
ResultSet(const std::string &name="result")
Constructs a ResultSet with an optional name.
Definition ResultSet.cpp:5
const std::vector< ColumnDefinition > & getSchema() const override
Implements IDataTemplate interface.
Definition ResultSet.cpp:14
size_t getRowCount() const override
Implements IDataTemplate interface.
Definition ResultSet.cpp:24
bool isMutable() const override
Implements IDataTemplate interface.
Definition ResultSet.cpp:39
const std::string & getName() const override
Implements IDataTemplate interface.
Definition ResultSet.cpp:9
Definition BPlusTree.h:9
Column definition.
Definition DataTypes.h:56
A row of data.
Definition DataTypes.h:45