diff options
Diffstat (limited to 'odb/relational/schema-source.hxx')
-rw-r--r-- | odb/relational/schema-source.hxx | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/odb/relational/schema-source.hxx b/odb/relational/schema-source.hxx index a72b55b..82b7e71 100644 --- a/odb/relational/schema-source.hxx +++ b/odb/relational/schema-source.hxx @@ -21,18 +21,20 @@ namespace relational virtual void traverse (type& c) { - if (class_file (c) != unit.file () || !object (c) || abstract (c)) + if (class_file (c) != unit.file ()) return; - context::top_object = context::cur_object = &c; + if (!object (c)) + return; + + if (abstract (c) && !polymorphic (c)) + return; os << "// " << class_name (c) << endl << "//" << endl << endl; schema_->traverse (c); - - context::top_object = context::cur_object = 0; } private: |