diff options
Diffstat (limited to 'odb/qt/basic/sqlite/quuid-traits.hxx')
-rw-r--r-- | odb/qt/basic/sqlite/quuid-traits.hxx | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/odb/qt/basic/sqlite/quuid-traits.hxx b/odb/qt/basic/sqlite/quuid-traits.hxx deleted file mode 100644 index 20d4a94..0000000 --- a/odb/qt/basic/sqlite/quuid-traits.hxx +++ /dev/null @@ -1,74 +0,0 @@ -// file : odb/qt/basic/sqlite/uuid-traits.hxx -// license : GNU GPL v2; see accompanying LICENSE file - -#ifndef ODB_QT_BASIC_SQLITE_UUID_TRAITS_HXX -#define ODB_QT_BASIC_SQLITE_UUID_TRAITS_HXX - -#include <odb/pre.hxx> - -#include <cstring> // std::memcpy -#include <cassert> - -#include <QtCore/QUuid> - -#include <odb/sqlite/traits.hxx> - -namespace odb -{ - namespace sqlite - { - template <> - struct default_value_traits<QUuid, id_blob> - { - typedef QUuid value_type; - typedef value_type query_type; - typedef details::buffer image_type; - - static void - set_value (value_type& v, - const details::buffer& b, - std::size_t n, - bool is_null) - { - if (!is_null) - { - assert (n == 16); - std::memcpy (&v.data1, b.data (), 16); - } - else - v = QUuid (); - } - - static void - set_image (details::buffer& b, - std::size_t& n, - bool& is_null, - const value_type& v) - { - // If we can, store nil as NULL. Otherwise, store it as a value. - // - is_null = is_null && v.isNull (); - - if (!is_null) - { - n = 16; - - if (n > b.capacity ()) - b.capacity (n); - - std::memcpy (b.data (), &v.data1, n); - } - } - }; - - template <> - struct default_type_traits<QUuid> - { - static const database_type_id db_type_id = id_blob; - }; - } -} - -#include <odb/post.hxx> - -#endif // ODB_QT_BASIC_SQLITE_UUID_TRAITS_HXX |