diff options
Diffstat (limited to 'src/util/configuration.cpp')
-rw-r--r-- | src/util/configuration.cpp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/util/configuration.cpp b/src/util/configuration.cpp index 9b4d32e0b..abda24c26 100644 --- a/src/util/configuration.cpp +++ b/src/util/configuration.cpp @@ -19,6 +19,8 @@ **/ #include <string> +#include <string.h> +#include <stdlib.h> #include <sstream> #include "util/configuration.h" @@ -147,6 +149,21 @@ char const* const* Configuration::getDebugTags() { #endif /* CVC4_DEBUG */ } +int strcmpptr(const char **s1, const char **s2){ + return strcmp(*s1,*s2); +} + +bool Configuration::isDebugTag(char const *){ +#if CVC4_DEBUG + unsigned ntags = getNumDebugTags(); + char const* const* tags = getDebugTags(); + return (bsearch(&optarg, tags, ntags, sizeof(char *), + (int(*)(const void*,const void*))strcmpptr) != NULL); +#else /* CVC4_DEBUG */ + return false; +#endif /* CVC4_DEBUG */ +} + unsigned Configuration::getNumTraceTags() { #if CVC4_TRACING /* -1 because a NULL pointer is inserted as the last value */ @@ -165,6 +182,17 @@ char const* const* Configuration::getTraceTags() { #endif /* CVC4_TRACING */ } +bool Configuration::isTraceTag(char const *){ +#if CVC4_TRACING + unsigned ntags = getNumTraceTags(); + char const* const* tags = getTraceTags(); + return (bsearch(&optarg, tags, ntags, sizeof(char *), + (int(*)(const void*,const void*))strcmpptr) != NULL); +#else /* CVC4_TRACING */ + return false; +#endif /* CVC4_TRACING */ +} + bool Configuration::isSubversionBuild() { return IS_SUBVERSION_BUILD; } |