ZT_CMP_UINT(3)

#define ZT_CMP_UINT(left, rel, right) zt_cmp_uint( ZT_CURRENT_LOCATION(), zt_pack_unsigned((left)

Section 3 libzt-doc bookworm source

Description

UNTITLED() LOCAL UNTITLED()

NAME

ZT_CMP_UINT, zt_cmp_uint — construct a claim of a relation between two unsigned integers

SYNOPSIS

#include <zt.h>

#define ZT_CMP_UINT(left, rel, right) \
zt_cmp_uint( \
ZT_CURRENT_LOCATION(), \
zt_pack_unsigned((left), (#left)), \
zt_pack_string((#rel), (#rel)), \
zt_pack_unsigned((right), (#right)))

zt_claim

zt_cmp_uint(zt_location location, zt_value left, zt_value rel, zt_value right);

DESCRIPTION

zt_cmp_uint() constructs a claim of a relation between two unsigned integers. It should be used through the macro ZT_CMP_UINT() which passes source code location and packs arguments.

The relation must be one of ==, !=, <, <=, > or >=.

IMPLEMENTATION NOTES

ZT_CMP_UINT() evaluates left and right exactly once.

RETURN VALUES

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

SEE ALSO

ZT_CMP_BOOL(3), ZT_CMP_RUNE(3), ZT_CMP_CSTR(3), ZT_CMP_PTR(3), ZT_CMP_UINT(3), ZT_FALSE(3), ZT_NOT_NULL(3), ZT_NULL(3), ZT_TRUE(3), zt_check(3),

HISTORY

The ZT_CMP_UINT() macro and the zt_cmp_uint() function first appeared in libzt 0.1

Since libzt 0.3 zt_cmp_uint() internally promotes left and right arguments from ZT_UNSIGNED to ZT_UINTMAX.

AUTHORS

Zygmunt Krynicki <me@zygoon.pl> libzt 0.3.1 January 12, 2020 ZT_CMP_UINT(3)