aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2014-11-21 07:28:16 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2014-11-21 07:28:16 +0200
commita7eb0390b8baf5228ef0a615c657813ff86e60de (patch)
tree2cea4bd4b2bbf4882b8684e109d45569cebe09cf
parentd56c3e03eaf296c97b6add01b4e2ce543893d6c4 (diff)
Add database-specific persist(const T&)
-rw-r--r--odb/oracle/database.hxx4
-rw-r--r--odb/oracle/database.ixx7
2 files changed, 11 insertions, 0 deletions
diff --git a/odb/oracle/database.hxx b/odb/oracle/database.hxx
index d40611f..a7df050 100644
--- a/odb/oracle/database.hxx
+++ b/odb/oracle/database.hxx
@@ -95,6 +95,10 @@ namespace odb
template <typename T>
typename object_traits<T>::id_type
+ persist (const T& object);
+
+ template <typename T>
+ typename object_traits<T>::id_type
persist (T* obj_ptr);
template <typename T, template <typename> class P>
diff --git a/odb/oracle/database.ixx b/odb/oracle/database.ixx
index d3b56ae..ff2afea 100644
--- a/odb/oracle/database.ixx
+++ b/odb/oracle/database.ixx
@@ -27,6 +27,13 @@ namespace odb
template <typename T>
inline typename object_traits<T>::id_type database::
+ persist (const T& obj)
+ {
+ return persist_<const T, id_oracle> (obj);
+ }
+
+ template <typename T>
+ inline typename object_traits<T>::id_type database::
persist (T* p)
{
typedef typename object_traits<T>::pointer_type object_pointer;