aboutsummaryrefslogtreecommitdiff
path: root/libbrep/package-traits.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'libbrep/package-traits.hxx')
-rw-r--r--libbrep/package-traits.hxx38
1 files changed, 38 insertions, 0 deletions
diff --git a/libbrep/package-traits.hxx b/libbrep/package-traits.hxx
new file mode 100644
index 0000000..b626ea8
--- /dev/null
+++ b/libbrep/package-traits.hxx
@@ -0,0 +1,38 @@
+// file : brep/package-traits -*- C++ -*-
+// copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
+// license : MIT; see accompanying LICENSE file
+
+#ifndef BREP_PACKAGE_TRAITS
+#define BREP_PACKAGE_TRAITS
+
+#include <cstddef> // size_t
+
+#include <odb/pgsql/traits.hxx>
+
+#include <libbrep/package.hxx> // weighted_text
+
+namespace odb
+{
+ namespace pgsql
+ {
+ template <>
+ class value_traits<brep::weighted_text, id_string>
+ {
+ public:
+ typedef brep::weighted_text value_type;
+ typedef value_type query_type;
+ typedef details::buffer image_type;
+
+ static void
+ set_value (value_type&, const details::buffer&, std::size_t, bool) {}
+
+ static void
+ set_image (details::buffer&,
+ std::size_t& n,
+ bool& is_null,
+ const value_type&);
+ };
+ }
+}
+
+#endif // BREP_PACKAGE_TRAITS