aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2012-07-16 13:45:28 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2012-07-16 13:45:28 +0200
commitbbd8337c66b24eaf3a1d1df9d9dce67d5572a749 (patch)
treef82d27d4b78da8154480f46130a8e424779b540a
parentc970a38889d5774f7d0f73215dfd70934524d76a (diff)
Simplify query inheritance hierarchy
This should also allow Sun CC handle queries for objects with circular dependencies.
-rw-r--r--odb/mysql/query.hxx17
1 files changed, 9 insertions, 8 deletions
diff --git a/odb/mysql/query.hxx b/odb/mysql/query.hxx
index 732244c..f1d0d56 100644
--- a/odb/mysql/query.hxx
+++ b/odb/mysql/query.hxx
@@ -1862,7 +1862,8 @@ namespace odb
namespace odb
{
template <typename T>
- class query<T, mysql::query>: public query_selector<T>::type
+ class query<T, mysql::query>: public mysql::query,
+ public query_selector<T>::columns_type
{
public:
// We don't define any typedefs here since they may clash with
@@ -1875,44 +1876,44 @@ namespace odb
explicit
query (bool v)
- : query_selector<T>::type (v)
+ : mysql::query (v)
{
}
explicit
query (const char* q)
- : query_selector<T>::type (q)
+ : mysql::query (q)
{
}
explicit
query (const std::string& q)
- : query_selector<T>::type (q)
+ : mysql::query (q)
{
}
template <typename T2>
explicit
query (mysql::val_bind<T2> v)
- : query_selector<T>::type (mysql::query (v))
+ : mysql::query (mysql::query (v))
{
}
template <typename T2>
explicit
query (mysql::ref_bind<T2> r)
- : query_selector<T>::type (mysql::query (r))
+ : mysql::query (mysql::query (r))
{
}
query (const mysql::query& q)
- : query_selector<T>::type (q)
+ : mysql::query (q)
{
}
template <mysql::database_type_id ID>
query (const mysql::query_column<bool, ID>& qc)
- : query_selector<T>::type (qc)
+ : mysql::query (qc)
{
}
};