From 84cb9f184bc24ef7151ab9931b46311b03219b14 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Fri, 26 Apr 2013 15:54:19 +0200 Subject: Add support for table options in changelog, use to handle MySQL engine --- odb/semantics/relational/table.cxx | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'odb/semantics/relational/table.cxx') diff --git a/odb/semantics/relational/table.cxx b/odb/semantics/relational/table.cxx index 17265bd..80add9f 100644 --- a/odb/semantics/relational/table.cxx +++ b/odb/semantics/relational/table.cxx @@ -15,7 +15,8 @@ namespace semantics table:: table (table const& t, qscope& s, graph& g, bool b) : qnameable (t, g), - uscope (t, (b ? s.lookup (t.name ()) : 0), g) + uscope (t, (b ? s.lookup (t.name ()) : 0), g), + options_ (t.options_) { } @@ -26,7 +27,8 @@ namespace semantics p, (b ? s.lookup ( p.attribute ("name")) : 0), - g) + g), + options_ (p.attribute ("options", string ())) { } @@ -37,10 +39,19 @@ namespace semantics } void table:: + serialize_attributes (xml::serializer& s) const + { + qnameable::serialize_attributes (s); + + if (!options_.empty ()) + s.attribute ("options", options_); + } + + void table:: serialize (xml::serializer& s) const { s.start_element (xmlns, "table"); - qnameable::serialize_attributes (s); + serialize_attributes (s); uscope::serialize_content (s); s.end_element (); } -- cgit v1.1