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:
15 explicit ResultSet(const std::string& name = "result");
16 const std::string& getName() const override;
17 const std::vector<ColumnDefinition>& getSchema() const override;
18 const std::vector<Row>& getRows() const override;
19 size_t getRowCount() const override;
20 size_t getColumnCount() const override;
21 bool isEmpty() const override;
22 bool isMutable() const override;
23 void addColumn(const ColumnDefinition& column);
24 void addRow(const Row& row);
25 const Row& getRow(size_t index) const;
26
27 private:
28 std::string _name;
29 std::vector<ColumnDefinition> _schema;
30 std::vector<Row> _rows;
31 };
32}
33
34#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
Check if empty.
Definition ResultSet.cpp:62
void addRow(const Row &row)
Add a row (used by executor).
Definition ResultSet.cpp:89
void addColumn(const ColumnDefinition &column)
Add column definition (used by executor).
Definition ResultSet.cpp:80
const Row & getRow(size_t index) const
Get a specific row.
Definition ResultSet.cpp:100
const std::vector< Row > & getRows() const override
Get all rows.
Definition ResultSet.cpp:35
size_t getColumnCount() const override
Get column count.
Definition ResultSet.cpp:53
ResultSet(const std::string &name="result")
Constructor.
Definition ResultSet.cpp:9
const std::vector< ColumnDefinition > & getSchema() const override
Get schema.
Definition ResultSet.cpp:26
size_t getRowCount() const override
Get row count.
Definition ResultSet.cpp:44
bool isMutable() const override
Check if mutable.
Definition ResultSet.cpp:71
const std::string & getName() const override
Get result set name.
Definition ResultSet.cpp:17
Definition BPlusTree.h:9
Column definition.
Definition DataTypes.h:56
A row of data.
Definition DataTypes.h:45