diff options
author | Morgan Deters <mdeters@gmail.com> | 2010-01-26 07:29:41 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2010-01-26 07:29:41 +0000 |
commit | 21e01d42ed4c0b6d9fa5855c2e0cfc1a3765d14f (patch) | |
tree | ec785ced868a294e72cc751a293c618488743c8b /src/util/Assert.h | |
parent | f2d38a8522579f9b3e434f76a9426fa8d2f06d07 (diff) |
fixes to build structure, util classes, lots of fixes to Node and NodeBuilder. outstanding SEGVs fixed
Diffstat (limited to 'src/util/Assert.h')
-rw-r--r-- | src/util/Assert.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/util/Assert.h b/src/util/Assert.h index 49c97e9b6..d8e881613 100644 --- a/src/util/Assert.h +++ b/src/util/Assert.h @@ -113,6 +113,28 @@ public: } };/* class UnhandledCaseException */ +class CVC4_PUBLIC UnimplementedOperationException : public AssertionException { +protected: + UnimplementedOperationException() : AssertionException() {} + +public: + UnimplementedOperationException(const char* function, const char* file, + unsigned line, const char* fmt, ...) : + AssertionException() { + va_list args; + va_start(args, fmt); + construct("Unimplemented code encountered", + NULL, function, file, line, fmt, args); + va_end(args); + } + + UnimplementedOperationException(const char* function, const char* file, + unsigned line) : + AssertionException() { + construct("Unimplemented code encountered", NULL, function, file, line); + } +};/* class UnimplementedOperationException */ + class CVC4_PUBLIC IllegalArgumentException : public AssertionException { protected: IllegalArgumentException() : AssertionException() {} @@ -172,6 +194,8 @@ public: throw UnreachableCodeException(__PRETTY_FUNCTION__, __FILE__, __LINE__, ## msg) #define Unhandled(msg...) \ throw UnhandledCaseException(__PRETTY_FUNCTION__, __FILE__, __LINE__, ## msg) +#define Unimplemented(msg...) \ + throw UnimplementedOperationException(__PRETTY_FUNCTION__, __FILE__, __LINE__, ## msg) #define IllegalArgument(arg, msg...) \ throw IllegalArgumentException(#arg, __PRETTY_FUNCTION__, __FILE__, __LINE__, ## msg) #define CheckArgument(cond, arg, msg...) \ |