From 7ae497743c7b042904fe1f6b4153ab3f4763ff2b Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Thu, 10 Mar 2011 08:44:28 +0200 Subject: Split MySQL code generator into common and db-specific parts The common part (in relational/) still has some MySQL-specific parts. Also, add the notion of the current context which is used to avoid explicitly passing the context object to every generator's c-tor. --- odb/relational/context.cxx | 54 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 odb/relational/context.cxx (limited to 'odb/relational/context.cxx') diff --git a/odb/relational/context.cxx b/odb/relational/context.cxx new file mode 100644 index 0000000..e7a4f21 --- /dev/null +++ b/odb/relational/context.cxx @@ -0,0 +1,54 @@ +// file : odb/relational/context.cxx +// author : Boris Kolpackov +// copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC +// license : GNU GPL v3; see accompanying LICENSE file + +#include + +using namespace std; + +namespace relational +{ + context:: + context () + : data_ (current ().data_) + { + } + + context:: + context (data* d) + : data_ (d) + { + } + + bool context:: + grow_impl (semantics::class_&) + { + return false; + } + + bool context:: + grow_impl (semantics::data_member&) + { + return false; + } + + bool context:: + grow_impl (semantics::data_member&, + semantics::type&, + string const&) + { + return false; + } + + string context:: + quote_id_impl (string const& id) const + { + string r; + r.reserve (id.size ()); + r += '"'; + r += id; + r += '"'; + return r; + } +} -- cgit v1.1