aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2011-03-24 12:18:13 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2011-03-24 12:18:13 +0200
commit48c1630764665072bbb592f7072e48aa654a1c71 (patch)
tree42fb1e109d04c6ad3769f568bfcf0b30a50f70ec
parentbe5909a7fc240c007bb0128353d493af947a8749 (diff)
Factor out bind struct to sqlite-types.hxx
-rw-r--r--odb/sqlite/binding.hxx24
-rw-r--r--odb/sqlite/sqlite-types.hxx42
2 files changed, 44 insertions, 22 deletions
diff --git a/odb/sqlite/binding.hxx b/odb/sqlite/binding.hxx
index 70edd28..426195b 100644
--- a/odb/sqlite/binding.hxx
+++ b/odb/sqlite/binding.hxx
@@ -12,33 +12,13 @@
#include <odb/forward.hxx>
+#include <odb/sqlite/sqlite-types.hxx>
#include <odb/sqlite/details/export.hxx>
namespace odb
{
namespace sqlite
{
- // The SQLite parameter/result binding. This data structures is
- // modelled after MYSQL_BIND from MySQL.
- //
- struct bind
- {
- enum buffer_type
- {
- integer, // Buffer is long long; size, capacity, truncated are unused.
- real, // Buffer is double; size, capacity, truncated are unused.
- text, // Buffer is a char array.
- blob // Buffer is a char array.
- };
-
- buffer_type type;
- void* buffer;
- std::size_t* size;
- std::size_t capacity;
- bool* is_null;
- bool* truncated;
- };
-
class LIBODB_SQLITE_EXPORT binding
{
public:
@@ -51,7 +31,7 @@ namespace odb
bind_type* bind;
std::size_t count;
- std::size_t version;
+ std::size_t version; // @@ Don't really need it (gen code).
private:
binding (const binding&);
diff --git a/odb/sqlite/sqlite-types.hxx b/odb/sqlite/sqlite-types.hxx
new file mode 100644
index 0000000..b0bcde4
--- /dev/null
+++ b/odb/sqlite/sqlite-types.hxx
@@ -0,0 +1,42 @@
+// file : odb/sqlite/sqlite-types.hxx
+// author : Boris Kolpackov <boris@codesynthesis.com>
+// copyright : Copyright (c) 2005-2011 Code Synthesis Tools CC
+// license : GNU GPL v2; see accompanying LICENSE file
+
+#ifndef ODB_SQLITE_SQLITE_TYPES_HXX
+#define ODB_SQLITE_SQLITE_TYPES_HXX
+
+#include <odb/pre.hxx>
+
+#include <cstddef> // std::size_t
+
+namespace odb
+{
+ namespace sqlite
+ {
+ // The SQLite parameter/result binding. This data structures is modelled
+ // after MYSQL_BIND from MySQL.
+ //
+ struct bind
+ {
+ enum buffer_type
+ {
+ integer, // Buffer is long long; size, capacity, truncated are unused.
+ real, // Buffer is double; size, capacity, truncated are unused.
+ text, // Buffer is a char array.
+ blob // Buffer is a char array.
+ };
+
+ buffer_type type;
+ void* buffer;
+ std::size_t* size;
+ std::size_t capacity;
+ bool* is_null;
+ bool* truncated;
+ };
+ }
+}
+
+#include <odb/post.hxx>
+
+#endif // ODB_SQLITE_SQLITE_TYPES_HXX