summaryrefslogtreecommitdiff
path: root/odb/context.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2013-03-18 08:47:33 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2013-04-10 18:46:43 +0200
commitcf75fa3e2be8c1fa12905e391a61c1ec763a5331 (patch)
tree01002c498bb7de50d38c3aa80328a084f4ccb797 /odb/context.hxx
parent57c5676666edd3b4df6a8623c1ff26049bba2259 (diff)
Add model version pragma
Diffstat (limited to 'odb/context.hxx')
-rw-r--r--odb/context.hxx23
1 files changed, 23 insertions, 0 deletions
diff --git a/odb/context.hxx b/odb/context.hxx
index fe9b533..d148a97 100644
--- a/odb/context.hxx
+++ b/odb/context.hxx
@@ -257,6 +257,15 @@ struct member_access
// necessarily mean that it is by reference.
};
+//
+//
+struct model_version
+{
+ unsigned long long base;
+ unsigned long long current;
+ bool open;
+};
+
class context
{
public:
@@ -581,6 +590,20 @@ public:
return c.get<semantics::data_member*> ("discriminator", 0);
}
+ // Model version.
+ //
+ bool
+ versioned () const
+ {
+ return unit.count ("model-version") != 0;
+ }
+
+ model_version const&
+ version () const
+ {
+ return unit.get<model_version> ("model-version");
+ }
+
//
//
typedef ::class_kind class_kind_type;