aboutsummaryrefslogtreecommitdiff
path: root/odb/relational/pgsql
diff options
context:
space:
mode:
Diffstat (limited to 'odb/relational/pgsql')
-rw-r--r--odb/relational/pgsql/common.cxx25
-rw-r--r--odb/relational/pgsql/common.hxx9
-rw-r--r--odb/relational/pgsql/context.cxx22
-rw-r--r--odb/relational/pgsql/context.hxx5
-rw-r--r--odb/relational/pgsql/source.cxx10
5 files changed, 44 insertions, 27 deletions
diff --git a/odb/relational/pgsql/common.cxx b/odb/relational/pgsql/common.cxx
index 7611299..43adb6a 100644
--- a/odb/relational/pgsql/common.cxx
+++ b/odb/relational/pgsql/common.cxx
@@ -133,12 +133,15 @@ namespace relational
}
member_image_type::
+ member_image_type ()
+ : relational::member_base (0, 0, string (), string ()) {}
+
+ member_image_type::
member_image_type (semantics::type* type,
+ const custom_cxx_type* ct,
string const& fq_type,
string const& key_prefix)
- : relational::member_base (type, fq_type, key_prefix)
- {
- }
+ : relational::member_base (type, ct, fq_type, key_prefix) {}
string member_image_type::
image_type (semantics::data_member& m)
@@ -244,18 +247,20 @@ namespace relational
member_database_type_id::
member_database_type_id (base const& x)
: member_base::base (x), // virtual base
- base (x)
- {
- }
+ base (x) {}
+
+ member_database_type_id::
+ member_database_type_id ()
+ : member_base::base (0, 0, string (), string ()), // virtual base
+ base (0, 0, string (), string ()) {}
member_database_type_id::
member_database_type_id (semantics::type* type,
+ const custom_cxx_type* ct,
string const& fq_type,
string const& key_prefix)
- : member_base::base (type, fq_type, key_prefix), // virtual base
- base (type, fq_type, key_prefix)
- {
- }
+ : member_base::base (type, ct, fq_type, key_prefix), // virtual base
+ base (type, ct, fq_type, key_prefix) {}
string member_database_type_id::
database_type_id (type& m)
diff --git a/odb/relational/pgsql/common.hxx b/odb/relational/pgsql/common.hxx
index be6e33b..0d22aff 100644
--- a/odb/relational/pgsql/common.hxx
+++ b/odb/relational/pgsql/common.hxx
@@ -73,7 +73,9 @@ namespace relational
member_base
{
member_image_type (base const&);
- member_image_type (semantics::type* type = 0,
+ member_image_type ();
+ member_image_type (semantics::type* type,
+ const custom_cxx_type*,
string const& fq_type = string (),
string const& key_prefix = string ());
virtual string
@@ -114,8 +116,9 @@ namespace relational
member_base
{
member_database_type_id (base const&);
-
- member_database_type_id (semantics::type* type = 0,
+ member_database_type_id ();
+ member_database_type_id (semantics::type* type,
+ const custom_cxx_type*,
string const& fq_type = string (),
string const& key_prefix = string ());
diff --git a/odb/relational/pgsql/context.cxx b/odb/relational/pgsql/context.cxx
index 1910187..f8a9fe2 100644
--- a/odb/relational/pgsql/context.cxx
+++ b/odb/relational/pgsql/context.cxx
@@ -155,14 +155,17 @@ namespace relational
struct has_grow_member: member_base
{
+ has_grow_member (bool& r, user_section* section = 0)
+ : relational::member_base (0, 0, string (), string (), section),
+ r_ (r) {}
+
has_grow_member (bool& r,
- user_section* section = 0,
- semantics::type* type = 0,
+ user_section* section,
+ semantics::type* t,
+ const custom_cxx_type* ct,
string const& key_prefix = string ())
- : relational::member_base (type, string (), key_prefix, section),
- r_ (r)
- {
- }
+ : relational::member_base (t, ct, string (), key_prefix, section),
+ r_ (r) {}
virtual bool
pre (member_info& mi)
@@ -229,10 +232,13 @@ namespace relational
}
bool context::
- grow_impl (semantics::data_member& m, semantics::type& t, string const& kp)
+ grow_impl (semantics::data_member& m,
+ semantics::type& t,
+ const custom_cxx_type* ct,
+ string const& kp)
{
bool r (false);
- has_grow_member mt (r, 0, &t, kp);
+ has_grow_member mt (r, 0, &t, ct, kp);
mt.traverse (m);
return r;
}
diff --git a/odb/relational/pgsql/context.hxx b/odb/relational/pgsql/context.hxx
index b49ea99..53b1c95 100644
--- a/odb/relational/pgsql/context.hxx
+++ b/odb/relational/pgsql/context.hxx
@@ -120,7 +120,10 @@ namespace relational
grow_impl (semantics::data_member&);
virtual bool
- grow_impl (semantics::data_member&, semantics::type&, string const&);
+ grow_impl (semantics::data_member&,
+ semantics::type&,
+ const custom_cxx_type*,
+ string const&);
protected:
virtual string
diff --git a/odb/relational/pgsql/source.cxx b/odb/relational/pgsql/source.cxx
index d009a7c..2bbe232 100644
--- a/odb/relational/pgsql/source.cxx
+++ b/odb/relational/pgsql/source.cxx
@@ -911,7 +911,7 @@ namespace relational
// Statement types.
//
- semantics::type& vt (container_vt (t));
+ semantics::type& vt (container_vt (m));
semantics::type& idt (container_idt (m));
// insert statement types.
@@ -932,13 +932,13 @@ namespace relational
case ck_ordered:
{
if (!unordered (m))
- so.traverse (m, container_it (t), "index", "index");
+ so.traverse (m, container_it (m), "index", "index");
break;
}
case ck_map:
case ck_multimap:
{
- so.traverse (m, container_kt (t), "key", "key");
+ so.traverse (m, container_kt (m), "key", "key");
break;
}
case ck_set:
@@ -982,7 +982,7 @@ namespace relational
case ck_ordered:
{
if (!unordered (m))
- so.traverse (m, container_it (t), "index", "index");
+ so.traverse (m, container_it (m), "index", "index");
break;
}
case ck_map:
@@ -1018,7 +1018,7 @@ namespace relational
case ck_ordered:
{
if (!unordered (m))
- so.traverse (m, container_it (t), "index", "index");
+ so.traverse (m, container_it (m), "index", "index");
break;
}
case ck_map: