aboutsummaryrefslogtreecommitdiff
path: root/odb/semantics
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2011-04-25 13:05:21 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2011-04-25 13:05:21 +0200
commit9c5b2f928699a6752d7c3d1a062bac7efc247c64 (patch)
treebe169c837dc8c8e99972f63477699b61282d0d30 /odb/semantics
parentd7662d2cc72668eee0a21737edfcc1bbe41c229b (diff)
Add complete() and abstract() predicates to semantics::class_
Diffstat (limited to 'odb/semantics')
-rw-r--r--odb/semantics/class.cxx12
-rw-r--r--odb/semantics/class.hxx6
2 files changed, 18 insertions, 0 deletions
diff --git a/odb/semantics/class.cxx b/odb/semantics/class.cxx
index 6d1621a..05122e3 100644
--- a/odb/semantics/class.cxx
+++ b/odb/semantics/class.cxx
@@ -28,6 +28,18 @@ namespace semantics
return TYPE_HAS_DEFAULT_CONSTRUCTOR (tree_node ());
}
+ bool class_::
+ complete () const
+ {
+ return COMPLETE_TYPE_P (tree_node ());
+ }
+
+ bool class_::
+ abstract () const
+ {
+ return CLASSTYPE_PURE_VIRTUALS (tree_node ());
+ }
+
// type info
//
namespace
diff --git a/odb/semantics/class.hxx b/odb/semantics/class.hxx
index 2d86cff..6d3b83b 100644
--- a/odb/semantics/class.hxx
+++ b/odb/semantics/class.hxx
@@ -91,6 +91,12 @@ namespace semantics
bool
default_ctor () const;
+ bool
+ complete () const;
+
+ bool
+ abstract () const;
+
public:
class_ (path const&, size_t line, size_t column, tree);