diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2011-11-08 13:40:31 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2011-11-08 13:40:31 +0200 |
commit | 28a08724fc9e2ac494596711990206c64ca36b1d (patch) | |
tree | 5f382e92fe0810a5b93522f92f26ea33f179c8d3 /common/query/traits-sqlite.hxx | |
parent | 37a2585ce1d0801bab5d0aba50012c3bcd451739 (diff) |
Get rid of custom value_traits specialization in query test
auto_ptr<string> is now handled automatically as a wrapper.
Diffstat (limited to 'common/query/traits-sqlite.hxx')
-rw-r--r-- | common/query/traits-sqlite.hxx | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/common/query/traits-sqlite.hxx b/common/query/traits-sqlite.hxx deleted file mode 100644 index 4e58b34..0000000 --- a/common/query/traits-sqlite.hxx +++ /dev/null @@ -1,59 +0,0 @@ -// file : common/query/traits-sqlite.hxx -// author : Boris Kolpackov <boris@codesynthesis.com> -// copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -// license : GNU GPL v2; see accompanying LICENSE file - -#ifndef TRAITS_SQLITE_HXX -#define TRAITS_SQLITE_HXX - -#include <string> -#include <memory> // std::auto_ptr -#include <cstring> // std::memcpy - -#include <odb/sqlite/traits.hxx> - -namespace odb -{ - namespace sqlite - { - template <> - class value_traits<std::auto_ptr<std::string>, id_text> - { - public: - typedef std::auto_ptr<std::string> value_type; - typedef std::string query_type; - typedef details::buffer image_type; - - static void - set_value (std::auto_ptr<std::string>& v, - const details::buffer& b, - std::size_t n, - bool is_null) - { - v.reset (is_null ? 0 : new std::string (b.data (), n)); - } - - static void - set_image (details::buffer& b, - std::size_t& n, - bool& is_null, - const std::auto_ptr<std::string>& v) - { - is_null = v.get () == 0; - - if (!is_null) - { - n = v->size (); - - if (n > b.capacity ()) - b.capacity (n); - - if (n != 0) - std::memcpy (b.data (), v->c_str (), n); - } - } - }; - } -} - -#endif // TRAITS_SQLITE_HXX |