From 6692558ba588c76f5e61eb7ed9a1040d36cb9ed7 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Fri, 26 Apr 2013 17:18:12 +0200 Subject: Add support for extra database info in primary key Use that to handle Oracle sequence name and SQLite lax auto ids. --- odb/semantics/relational/elements.hxx | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) (limited to 'odb/semantics/relational/elements.hxx') diff --git a/odb/semantics/relational/elements.hxx b/odb/semantics/relational/elements.hxx index 11e7ea8..a0f02a4 100644 --- a/odb/semantics/relational/elements.hxx +++ b/odb/semantics/relational/elements.hxx @@ -49,37 +49,28 @@ namespace semantics class edge: public context { public: - virtual - ~edge () {} - - public: template bool is_a () const { return dynamic_cast (this) != 0; } + + public: + virtual + ~edge () {} }; // // class node: public context { - public: - virtual - ~node () {} - // Return name of the node. // + public: virtual string kind () const = 0; - // XML serialization. - // - public: - virtual void - serialize (xml::serializer&) const = 0; - public: template bool @@ -88,10 +79,18 @@ namespace semantics return dynamic_cast (this) != 0; } + public: + virtual + ~node () {} + + // XML serialization. + // + virtual void + serialize (xml::serializer&) const = 0; + // Sink functions that allow extensions in the form of one-way // edges. // - public: void add_edge_right (edge&) {} -- cgit v1.1