From 8ea45e39522f7040048c28dbeae853eea6b03b71 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 5 Jul 2011 18:44:38 +0200 Subject: Add hook for schema column reference generation --- odb/relational/schema.hxx | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/odb/relational/schema.hxx b/odb/relational/schema.hxx index ada459d..28a893a 100644 --- a/odb/relational/schema.hxx +++ b/odb/relational/schema.hxx @@ -189,12 +189,7 @@ namespace relational type (m); constraints (m); - - if (semantics::class_* c = object_pointer (member_type (m, prefix_))) - { - os << " REFERENCES " << quote_id (table_name (*c)) << " (" << - quote_id (column_name (*id_member (*c))) << ")"; - } + reference (m); return true; } @@ -212,6 +207,16 @@ namespace relational os << " PRIMARY KEY"; } + virtual void + reference (semantics::data_member& m) + { + if (semantics::class_* c = object_pointer (member_type (m, prefix_))) + { + os << " REFERENCES " << quote_id (table_name (*c)) << " (" << + quote_id (column_name (*id_member (*c))) << ")"; + } + } + protected: string prefix_; }; -- cgit v1.1