Peano
Loading...
Searching...
No Matches
assert.h File Reference
#include <cstdlib>
#include <csignal>
#include <cstdio>
Include dependency graph for assert.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define DEBUGGER   {std::raise(SIGINT);}
 
#define KILL(reason)   { fprintf(stderr, "Error: %s\n %s:%d\n", reason, __FILE__, __LINE__); DEBUGGER std::exit(1); }
 
#define ASSERT(cond, reason)   if (!(cond)) [[unlikely]] KILL(reason);
 
#define assert(cond)   ASSERT(cond, "Assert failed")
 
#define WARN(reason)   { fprintf(stderr, "WARN: %s\n %s:%d\n", reason, __FILE__, __LINE__); }
 

Macro Definition Documentation

◆ assert

#define assert ( cond)    ASSERT(cond, "Assert failed")

Definition at line 14 of file assert.h.

◆ ASSERT

#define ASSERT ( cond,
reason )   if (!(cond)) [[unlikely]] KILL(reason);

Definition at line 12 of file assert.h.

◆ DEBUGGER

#define DEBUGGER   {std::raise(SIGINT);}

Definition at line 7 of file assert.h.

◆ KILL

#define KILL ( reason)    { fprintf(stderr, "Error: %s\n %s:%d\n", reason, __FILE__, __LINE__); DEBUGGER std::exit(1); }

Definition at line 9 of file assert.h.

◆ WARN

#define WARN ( reason)    { fprintf(stderr, "WARN: %s\n %s:%d\n", reason, __FILE__, __LINE__); }

Definition at line 20 of file assert.h.