aboutsummaryrefslogtreecommitdiff
path: root/odb/relational/inline.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2014-08-14 09:37:06 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2014-11-11 10:29:49 +0200
commit6fc9edcb2c54d395ea5d9a77bde882cd8ba9ec03 (patch)
tree0be9e0733fba6b6b1a3fa3ce66e7229a3f8c8de1 /odb/relational/inline.hxx
parentd59e3c27450747e5a04585ee9e943376b5bcfa41 (diff)
Draft implementation for INSERT
Diffstat (limited to 'odb/relational/inline.hxx')
-rw-r--r--odb/relational/inline.hxx15
1 files changed, 15 insertions, 0 deletions
diff --git a/odb/relational/inline.hxx b/odb/relational/inline.hxx
index ed10e09..76a6763 100644
--- a/odb/relational/inline.hxx
+++ b/odb/relational/inline.hxx
@@ -217,6 +217,7 @@ namespace relational
using semantics::data_member;
data_member* id (id_member (c));
+ bool auto_id (id && auto_ (*id));
bool base_id (id && &id->scope () != &c); // Comes from base.
data_member* optimistic (context::optimistic (c));
@@ -251,6 +252,20 @@ namespace relational
{
if (!poly_derived)
{
+ // id (id_image_type)
+ //
+ if (auto_id)
+ {
+ os << "inline" << endl
+ << traits << "::id_type" << endl
+ << traits << "::" << endl
+ << "id (const id_image_type& i)"
+ << "{"
+ << "return object_traits_impl< " << class_fq_name (*base) <<
+ ", id_" << db << " >::id (i);"
+ << "}";
+ }
+
// id (image_type)
//
if (options.generate_query ())