diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2011-03-10 08:44:28 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2011-03-21 15:39:59 +0200 |
commit | 7ae497743c7b042904fe1f6b4153ab3f4763ff2b (patch) | |
tree | 08ba3f742f20d16d893856ccceb070094bd69225 /odb/relational/context.cxx | |
parent | 2436f20262a41bd1cafa5107ab6d6799c03e0964 (diff) |
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.
Diffstat (limited to 'odb/relational/context.cxx')
-rw-r--r-- | odb/relational/context.cxx | 54 |
1 files changed, 54 insertions, 0 deletions
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 <boris@codesynthesis.com> +// copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC +// license : GNU GPL v3; see accompanying LICENSE file + +#include <odb/relational/context.hxx> + +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; + } +} |