diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2011-09-09 12:18:39 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2011-09-09 12:18:39 +0200 |
commit | e56ba020233ad7cb4762df300a6774db9195d817 (patch) | |
tree | fe392af07bab9d1fc19cb000e60f58cf39b3d746 /odb/relational/header.cxx | |
parent | 164d595dba8cadbe3b889b6e809aec8a24a8d878 (diff) |
New templated query_columns architecture
We also now use the correct separate "role"-base join approach instead of
having a single merged join for each table.
Diffstat (limited to 'odb/relational/header.cxx')
-rw-r--r-- | odb/relational/header.cxx | 47 |
1 files changed, 33 insertions, 14 deletions
diff --git a/odb/relational/header.cxx b/odb/relational/header.cxx index c70ef27..11d3cf6 100644 --- a/odb/relational/header.cxx +++ b/odb/relational/header.cxx @@ -18,26 +18,45 @@ namespace relational context ctx; ostream& os (ctx.os); - traversal::unit unit; - traversal::defines unit_defines; - traversal::namespace_ ns; - instance<class_> c; - - unit >> unit_defines >> ns; - unit_defines >> c; - - traversal::defines ns_defines; - - ns >> ns_defines >> ns; - ns_defines >> c; - instance<include> i; i->generate (); os << "namespace odb" << "{"; - unit.dispatch (ctx.unit); + { + traversal::unit unit; + traversal::defines unit_defines; + traversal::namespace_ ns; + instance<class1> c; + + unit >> unit_defines >> ns; + unit_defines >> c; + + traversal::defines ns_defines; + + ns >> ns_defines >> ns; + ns_defines >> c; + + unit.dispatch (ctx.unit); + } + + { + traversal::unit unit; + traversal::defines unit_defines; + traversal::namespace_ ns; + instance<class2> c; + + unit >> unit_defines >> ns; + unit_defines >> c; + + traversal::defines ns_defines; + + ns >> ns_defines >> ns; + ns_defines >> c; + + unit.dispatch (ctx.unit); + } os << "}"; } |