diff options
Diffstat (limited to 'odb/traversal/enum.hxx')
-rw-r--r-- | odb/traversal/enum.hxx | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/odb/traversal/enum.hxx b/odb/traversal/enum.hxx index 1efccaa..c949934 100644 --- a/odb/traversal/enum.hxx +++ b/odb/traversal/enum.hxx @@ -12,10 +12,7 @@ namespace traversal { struct enumerates: edge<semantics::enumerates> { - enumerates () - { - } - + enumerates () {} enumerates (node_dispatcher& n) { node_traverser (n); @@ -27,12 +24,30 @@ namespace traversal struct enumerator: node<semantics::enumerator> {}; + struct underlies: edge<semantics::underlies> + { + underlies () {} + underlies (node_dispatcher& n) + { + node_traverser (n); + } + + virtual void + traverse (type&); + }; + struct enum_: node<semantics::enum_> { virtual void traverse (type&); virtual void + underlied (type&); + + virtual void + underlied (type&, edge_dispatcher&); + + virtual void enumerates (type&); virtual void |