summaryrefslogtreecommitdiff
path: root/libodb-pgsql/odb/pgsql/query-dynamic.ixx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2024-01-25 17:28:38 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2024-01-25 17:28:38 +0300
commitd9f372d7b1bc1abbff5fdf9735118290cd024d5e (patch)
tree49bc3160ea184e19cd5cb6a7404dee42311c0fd7 /libodb-pgsql/odb/pgsql/query-dynamic.ixx
parent55e14d8f9697adeeb05fcd23cf8f19c33452bb56 (diff)
Turn libodb-pgsql repository into package for muti-package repositorylibodb-pgsql
Diffstat (limited to 'libodb-pgsql/odb/pgsql/query-dynamic.ixx')
-rw-r--r--libodb-pgsql/odb/pgsql/query-dynamic.ixx26
1 files changed, 26 insertions, 0 deletions
diff --git a/libodb-pgsql/odb/pgsql/query-dynamic.ixx b/libodb-pgsql/odb/pgsql/query-dynamic.ixx
new file mode 100644
index 0000000..016d213
--- /dev/null
+++ b/libodb-pgsql/odb/pgsql/query-dynamic.ixx
@@ -0,0 +1,26 @@
+// file : odb/pgsql/query-dynamic.ixx
+// license : GNU GPL v2; see accompanying LICENSE file
+
+namespace odb
+{
+ namespace pgsql
+ {
+ //
+ //
+ template <typename T, database_type_id ID>
+ inline query_column<T, ID>::
+ query_column (odb::query_column<T>& qc,
+ const char* table, const char* column, const char* conv)
+ : query_column_base (table, column, conv)
+ {
+ native_column_info& ci (qc.native_info[id_pgsql]);
+ ci.column = static_cast<query_column_base*> (this);
+
+ // For some reason GCC needs this statically-typed pointer in
+ // order to instantiate the functions.
+ //
+ query_param_factory f (&query_param_factory_impl<T, ID>);
+ ci.param_factory = reinterpret_cast<void*> (f);
+ }
+ }
+}