COMMS
Template library intended to help with implementation of communication protocols.
|
This file contains classes required for generic custom assertion functionality. More...
#include <cassert>
#include <type_traits>
#include <utility>
Go to the source code of this file.
Classes | |
class | comms::Assert |
Base class for any custom assertion behaviour. More... | |
class | comms::EnableAssert< TAssert > |
Enable new assertion behaviour. More... | |
Namespaces | |
namespace | comms |
Main namespace for all classes / functions of COMMS library. | |
Macros | |
#define | COMMS_ASSERT(expr) |
Generic assert macro. | |
#define | GASSERT(expr) COMMS_ASSERT(expr) |
Same as COMMS_ASSERT. | |
This file contains classes required for generic custom assertion functionality.
#define COMMS_ASSERT | ( | expr | ) |
Generic assert macro.
Will use custom assertion failure behaviour if such is defined, otherwise it will use standard "assert()" macro. In case COMMS_NOSTDLIB is defined and no custom assertion failure was enabled, infinite loop will be executed.
expr | Boolean expression |
#define GASSERT | ( | expr | ) | COMMS_ASSERT(expr) |
Same as COMMS_ASSERT.
Kept for backward compatibility of already written protocols.