aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2010-12-01 14:36:39 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2010-12-01 14:36:39 +0200
commitd2b7cfe47694cef008949255426cc57ab9a8e18a (patch)
tree8a7dc87cd025190e16fb6d351061c6392255f3d8
parentb94c9903fc73a8ce7e1ff985bba0279bcd518c3b (diff)
Implement not_null pointer pragma
New exception: null_pointer.
-rw-r--r--odb/exceptions.cxx6
-rw-r--r--odb/exceptions.hxx6
2 files changed, 12 insertions, 0 deletions
diff --git a/odb/exceptions.cxx b/odb/exceptions.cxx
index a41f719..e6b4e15 100644
--- a/odb/exceptions.cxx
+++ b/odb/exceptions.cxx
@@ -7,6 +7,12 @@
namespace odb
{
+ const char* null_pointer::
+ what () const throw ()
+ {
+ return "NULL pointer";
+ }
+
const char* already_in_transaction::
what () const throw ()
{
diff --git a/odb/exceptions.hxx b/odb/exceptions.hxx
index 26550cb..eaf8ec8 100644
--- a/odb/exceptions.hxx
+++ b/odb/exceptions.hxx
@@ -14,6 +14,12 @@
namespace odb
{
+ struct LIBODB_EXPORT null_pointer: odb::exception
+ {
+ virtual const char*
+ what () const throw ();
+ };
+
// Transaction exceptions.
//
struct LIBODB_EXPORT already_in_transaction: odb::exception