macros.icc File Reference
(Revision: 5885)
Go to the source code of this file.
Defines | |
#define | GECODE_CAT2(R, LINE) R ## LINE |
Concatenate R and LINE. | |
#define | GECODE_CAT(R, LINE) GECODE_CAT2(R,LINE) |
Concatenate macro-expanded R and LINE. | |
#define | GECODE_FRESH(P) GECODE_CAT(_GECODE_ ## P, __LINE__) |
Generate fresh name with prefix P. | |
#define | GECODE_NEVER assert(false); |
Assert that this command is never executed. | |
#define | GECODE_NOT_NULL(p) assert(p != NULL); |
Assert that a pointer is never NULL. | |
#define | GECODE_ASSUME(p) assert((p)); |
Assert certain property. |
Define Documentation
#define GECODE_CAT2 | ( | R, | |||
LINE | ) | R ## LINE |
#define GECODE_CAT | ( | R, | |||
LINE | ) | GECODE_CAT2(R,LINE) |
#define GECODE_FRESH | ( | P | ) | GECODE_CAT(_GECODE_ ## P, __LINE__) |
#define GECODE_NEVER assert(false); |
Assert that this command is never executed.
This is preferred over assert(false) as it is used for optimization, if supported by a compiler (for example, Microsoft Visual C++).
Definition at line 60 of file macros.icc.
#define GECODE_NOT_NULL | ( | p | ) | assert(p != NULL); |
Assert that a pointer is never NULL.
This is preferred over assert as it is used for optimization, if supported by a compiler (for example, Microsoft Visual C++).
Definition at line 79 of file macros.icc.
#define GECODE_ASSUME | ( | p | ) | assert((p)); |
Assert certain property.
This might be used for optimization as well (for example, Microsoft Visual C++), otherwise it behaves like any assert.
Definition at line 99 of file macros.icc.