aboutsummaryrefslogtreecommitdiff
path: root/sqlite/types/traits.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2011-07-28 09:45:36 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2011-07-28 09:45:36 +0200
commitab1487672afb5180bd17c9d26b35196bd06f6cda (patch)
tree51cc25e1b88cb0abc325a822f57845a98a22cb8a /sqlite/types/traits.hxx
parenta461f6d8bc6c314249057ad48fa8dd1cea1d8b40 (diff)
Add value_traits specializations for std::vector<char>
This allows using it as a buffer for BLOB mapping.
Diffstat (limited to 'sqlite/types/traits.hxx')
-rw-r--r--sqlite/types/traits.hxx39
1 files changed, 1 insertions, 38 deletions
diff --git a/sqlite/types/traits.hxx b/sqlite/types/traits.hxx
index 70b7b26..486e608 100644
--- a/sqlite/types/traits.hxx
+++ b/sqlite/types/traits.hxx
@@ -10,50 +10,13 @@
#include <odb/sqlite/traits.hxx>
-#include "test.hxx" // buffer, string_ptr
+#include "test.hxx" // string_ptr
namespace odb
{
namespace sqlite
{
template <>
- class value_traits<buffer, id_blob>
- {
- public:
- typedef buffer value_type;
- typedef buffer query_type;
- typedef details::buffer image_type;
-
- static void
- set_value (buffer& v,
- const details::buffer& b,
- std::size_t n,
- bool is_null)
- {
- if (!is_null)
- v.assign (b.data (), n);
- else
- v.assign (0, 0);
- }
-
- static void
- set_image (details::buffer& b,
- std::size_t& n,
- bool& is_null,
- const buffer& v)
- {
- is_null = false;
- n = v.size ();
-
- if (n > b.capacity ())
- b.capacity (n);
-
- if (n != 0)
- std::memcpy (b.data (), v.data (), n);
- }
- };
-
- template <>
class value_traits<string_ptr, id_text>
{
public: