summaryrefslogtreecommitdiff
path: root/src/database/statement.hpp
diff options
context:
space:
mode:
authorlouiz’ <louiz@louiz.org>2017-06-28 14:42:33 +0200
committerlouiz’ <louiz@louiz.org>2017-06-28 14:42:33 +0200
commitc5407cf8ce6add6f3534df41398235e93b605ab3 (patch)
treef62cccb758dde48270cc24257df36bd3f5f89cf8 /src/database/statement.hpp
parent13a1ab1878fd6312aea485ded3f5bad59c36f17f (diff)
parentb71ca15a0f9114db38eec23b49d1489a2ff1d0ca (diff)
downloadbiboumi-c5407cf8ce6add6f3534df41398235e93b605ab3.tar.gz
biboumi-c5407cf8ce6add6f3534df41398235e93b605ab3.tar.bz2
biboumi-c5407cf8ce6add6f3534df41398235e93b605ab3.tar.xz
biboumi-c5407cf8ce6add6f3534df41398235e93b605ab3.zip
Merge branch 'master' into debian
Diffstat (limited to 'src/database/statement.hpp')
-rw-r--r--src/database/statement.hpp35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/database/statement.hpp b/src/database/statement.hpp
new file mode 100644
index 0000000..87cd70f
--- /dev/null
+++ b/src/database/statement.hpp
@@ -0,0 +1,35 @@
+#pragma once
+
+#include <sqlite3.h>
+
+class Statement
+{
+ public:
+ Statement(sqlite3_stmt* stmt):
+ stmt(stmt) {}
+ ~Statement()
+ {
+ sqlite3_finalize(this->stmt);
+ }
+
+ Statement(const Statement&) = delete;
+ Statement& operator=(const Statement&) = delete;
+ Statement(Statement&& other):
+ stmt(other.stmt)
+ {
+ other.stmt = nullptr;
+ }
+ Statement& operator=(Statement&& other)
+ {
+ this->stmt = other.stmt;
+ other.stmt = nullptr;
+ return *this;
+ }
+ sqlite3_stmt* get()
+ {
+ return this->stmt;
+ }
+
+ private:
+ sqlite3_stmt* stmt;
+};