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