aboutsummaryrefslogtreecommitdiff
path: root/odb/sqlite/query-dynamic.txx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2012-11-21 13:11:43 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2012-11-21 13:11:43 +0200
commita2914e837c6442db936fd035b49f60ee488df533 (patch)
tree112ef78437897d22148d07292a19a15b7fd8a58b /odb/sqlite/query-dynamic.txx
parent14d0ecab529bc46ebadd319cd4dbc1c99bb53e6b (diff)
Add dynamic multi-database query support
Diffstat (limited to 'odb/sqlite/query-dynamic.txx')
-rw-r--r--odb/sqlite/query-dynamic.txx21
1 files changed, 21 insertions, 0 deletions
diff --git a/odb/sqlite/query-dynamic.txx b/odb/sqlite/query-dynamic.txx
new file mode 100644
index 0000000..c7d88cb
--- /dev/null
+++ b/odb/sqlite/query-dynamic.txx
@@ -0,0 +1,21 @@
+// file : odb/sqlite/query-dynamic.txx
+// copyright : Copyright (c) 2005-2012 Code Synthesis Tools CC
+// license : GNU GPL v2; see accompanying LICENSE file
+
+namespace odb
+{
+ namespace sqlite
+ {
+ template <typename T, database_type_id ID>
+ details::shared_ptr<query_param>
+ query_param_factory_impl (const void* val, bool by_ref)
+ {
+ const T& v (*static_cast<const T*> (val));
+
+ return details::shared_ptr<query_param> (
+ by_ref
+ ? new (details::shared) query_param_impl<T, ID> (ref_bind<T> (v))
+ : new (details::shared) query_param_impl<T, ID> (val_bind<T> (v)));
+ }
+ }
+}