diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2011-08-21 10:47:30 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2011-08-21 10:47:30 +0200 |
commit | 6a6095112daabd18d445ecf0d4c05e993e54236c (patch) | |
tree | 215997450ae13f63b0102d90daf41e104d1b0fc9 /odb/relational/schema.cxx | |
parent | a26f4251e67ccaaaa848982946c8867443092ebe (diff) |
Add support for multi-pass database schema drop
Diffstat (limited to 'odb/relational/schema.cxx')
-rw-r--r-- | odb/relational/schema.cxx | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/odb/relational/schema.cxx b/odb/relational/schema.cxx index a347d49..c55837e 100644 --- a/odb/relational/schema.cxx +++ b/odb/relational/schema.cxx @@ -182,7 +182,7 @@ namespace relational schema_emitter emitter; - // Drop. It is essentially pass 0. + // Drop. // { traversal::unit unit; @@ -197,7 +197,14 @@ namespace relational ns >> ns_defines >> ns; ns_defines >> c; - unit.dispatch (ctx.unit); + + // Pass 1 and 2. + // + for (unsigned short pass (1); pass < 3; ++pass) + { + c->pass (pass); + unit.dispatch (ctx.unit); + } } os << endl; |