diff options
Diffstat (limited to 'odb/context.ixx')
-rw-r--r-- | odb/context.ixx | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/odb/context.ixx b/odb/context.ixx new file mode 100644 index 0000000..285d364 --- /dev/null +++ b/odb/context.ixx @@ -0,0 +1,27 @@ +// file : odb/context.ixx +// copyright : Copyright (c) 2009-2013 Code Synthesis Tools CC +// license : GNU GPL v3; see accompanying LICENSE file + +inline bool user_section:: +load_empty () const +{ + return !separate_load () || (total == 0 && !containers && !optimistic ()); +} + +inline bool user_section:: +update_empty () const +{ + return total == inverse + readonly && !readwrite_containers; +} + +inline bool user_section:: +optimistic () const +{ + if (!context::optimistic (*object)) + return false; + else + { + semantics::class_* poly_root (context::polymorphic (*object)); + return poly_root == 0 || poly_root == object; + } +} |