DOKK / manpages / debian 12 / libzt-doc / ZT_NOT_NULL.3.en
ZT_NOT_NULL(3) Library Functions Manual (prm) ZT_NOT_NULL(3)

ZT_NOT_NULL, zt_not_nullconstruct a claim that a pointer is not NULL

#include <zt.h>

#define ZT_NOT_NULL(value) \
  zt_not_null( \
    ZT_CURRENT_LOCATION(), \
    zt_pack_pointer((value), #value))

zt_claim
zt_not_null(zt_location location, zt_value value);

() constructs a claim that a given pointer is not NULL. It should be used through the macro ZT_NOT_NULL(), which passes source code location and packs argument.

() can be useful, when coupled with (), to ensure that an object was correctly produced, allocated or returned and that the reminder of the test can inspect its properties using ().

ZT_NOT_NULL() evaluates only once.

Both the macro and the function return a zt_claim structure with the appropriate attributes set. The returned claim is usually passed to zt_check() or to zt_assert().

zt_assert(3), zt_check(3), zt_claim(3), ZT_CMP_BOOL(3), ZT_CMP_RUNE(3), ZT_CMP_CSTR(3), ZT_CMP_INT(3), ZT_CMP_PTR(3), ZT_CMP_UINT(3), ZT_FALSE(3), ZT_NOT_NULL(3), ZT_NOT_NULL(3) zt_value(3),

The ZT_NOT_NULL() macro and the zt_not_null() function first appeared in libzt 0.1

Zygmunt Krynicki <me@zygoon.pl>

January 12, 2020 libzt 0.3.1