WebFramework v3.0.12
Web framework for C++.
Loading...
Searching...
No Matches
SQLiteResult.h
1#pragma once
2
3#include "Import/WebFrameworkCore.h"
4
5namespace framework
6{
7 namespace sqlite
8 {
9 namespace utility
10 {
15 class WEB_FRAMEWORK_API SQLiteResult
16 {
17 public:
18 using const_iterator = std::vector<std::unordered_map<std::string, std::string>>::const_iterator;
19
20 private:
21 std::vector<std::unordered_map<std::string, std::string>> rows;
22
23 public:
24 explicit SQLiteResult(std::vector<std::unordered_map<std::string, std::string>>&& rows) noexcept;
25
26 SQLiteResult(const SQLiteResult& other) = default;
27
28 SQLiteResult(SQLiteResult&& other) noexcept = default;
29
30 SQLiteResult& operator = (const SQLiteResult& other) = default;
31
32 SQLiteResult& operator = (SQLiteResult&& other) noexcept = default;
33
36 size_t size() const;
37
40 bool isEmpty() const;
41
46 std::unordered_map<std::string, std::string>& operator [] (size_t index);
47
52 const std::unordered_map<std::string, std::string>& operator [] (size_t index) const;
53
57 std::unordered_map<std::string, std::string>& front();
58
62 const std::unordered_map<std::string, std::string>& front() const;
63
67 std::unordered_map<std::string, std::string>& back();
68
72 const std::unordered_map<std::string, std::string>& back() const;
73
78 std::unordered_map<std::string, std::string>& at(size_t index);
79
84 const std::unordered_map<std::string, std::string>& at(size_t index) const;
85
91 std::string& at(size_t index, const std::string& columnName);
92
98 const std::string& at(size_t index, const std::string& columnName) const;
99
102 const_iterator begin() const noexcept;
103
106 const_iterator end() const noexcept;
107
108 ~SQLiteResult() = default;
109 };
110 }
111 }
112}
Contains result of SQL request.
std::string & at(size_t index, const std::string &columnName)
Access to column in row.
const std::string & at(size_t index, const std::string &columnName) const
Const access to column in row.