diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2013-03-18 08:42:38 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2013-04-10 18:46:43 +0200 |
commit | ab135a6c31cd0e8c8b63b78781baa22442c1c129 (patch) | |
tree | a98a9cdf2e844a573e00e60264b437ce124339df /odb/traversal/relational/changelog.cxx | |
parent | 08b159e18527c2d6844e569b1309b5033b4d47c9 (diff) |
Add changelog, changeset, and add_table semantics nodes
Diffstat (limited to 'odb/traversal/relational/changelog.cxx')
-rw-r--r-- | odb/traversal/relational/changelog.cxx | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/odb/traversal/relational/changelog.cxx b/odb/traversal/relational/changelog.cxx new file mode 100644 index 0000000..715e271 --- /dev/null +++ b/odb/traversal/relational/changelog.cxx @@ -0,0 +1,64 @@ +// file : odb/traversal/relational/changelog.cxx +// copyright : Copyright (c) 2009-2013 Code Synthesis Tools CC +// license : GNU GPL v3; see accompanying LICENSE file + +#include <odb/traversal/relational/changelog.hxx> +#include <odb/traversal/relational/model.hxx> +#include <odb/traversal/relational/changeset.hxx> + +namespace traversal +{ + namespace relational + { + // contains_model + // + void contains_model:: + traverse (type& c) + { + dispatch (c.model ()); + } + + // contains_changeset + // + void contains_changeset:: + traverse (type& c) + { + dispatch (c.changeset ()); + } + + // changelog + // + void changelog:: + traverse (type& cl) + { + contains_model (cl); + contains_changeset (cl); + } + + void changelog:: + contains_model (type& cl) + { + contains_model (cl, *this); + } + + void changelog:: + contains_model (type& cl, edge_dispatcher& d) + { + d.dispatch (cl.contains_model ()); + } + + void changelog:: + contains_changeset (type& cl) + { + contains_changeset (cl, *this); + } + + void changelog:: + contains_changeset (type& cl, edge_dispatcher& d) + { + iterate_and_dispatch (cl.contains_changeset_begin (), + cl.contains_changeset_end (), + d); + } + } +} |