mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-03-14 19:55:12 +01:00
Add g_assert_true, g_assert_false and g_assert_null
These are just like g_assert(), but using a different entry point for the message, so we can repurpose them together with the other assertion macros. https://bugzilla.gnome.org/show_bug.cgi?id=692125
This commit is contained in:
parent
a32c9c7e9c
commit
b63739e60e
@ -348,6 +348,33 @@
|
|||||||
* <envar>G_DISABLE_ASSERT</envar> when compiling the application.
|
* <envar>G_DISABLE_ASSERT</envar> when compiling the application.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_assert_true:
|
||||||
|
* @expr: the expression to check
|
||||||
|
*
|
||||||
|
* Debugging macro to check that an expression is true.
|
||||||
|
*
|
||||||
|
* Since: 2.38
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_assert_false:
|
||||||
|
* @expr: the expression to check
|
||||||
|
*
|
||||||
|
* Debugging macro to check an expression is false.
|
||||||
|
*
|
||||||
|
* Since: 2.38
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_assert_null:
|
||||||
|
* @expr: the expression to check
|
||||||
|
*
|
||||||
|
* Debugging macro to check an expression is %NULL.
|
||||||
|
*
|
||||||
|
* Since: 2.38
|
||||||
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* g_assert_cmpstr:
|
* g_assert_cmpstr:
|
||||||
* @s1: a string (may be %NULL)
|
* @s1: a string (may be %NULL)
|
||||||
|
@ -66,6 +66,18 @@ typedef void (*GTestFixtureFunc) (gpointer fixture,
|
|||||||
#define g_assert_error(err, dom, c) do { if (!err || (err)->domain != dom || (err)->code != c) \
|
#define g_assert_error(err, dom, c) do { if (!err || (err)->domain != dom || (err)->code != c) \
|
||||||
g_assertion_message_error (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
|
g_assertion_message_error (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
|
||||||
#err, err, dom, c); } while (0)
|
#err, err, dom, c); } while (0)
|
||||||
|
#define g_assert_true(expr) do { if G_LIKELY (expr) ; else \
|
||||||
|
g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
|
||||||
|
#expr); \
|
||||||
|
} while (0)
|
||||||
|
#define g_assert_false(expr) do { if G_LIKELY (!(expr)) ; else \
|
||||||
|
g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
|
||||||
|
#expr); \
|
||||||
|
} while (0)
|
||||||
|
#define g_assert_null(expr) do { if G_LIKELY ((expr) == NULL) ; else \
|
||||||
|
g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
|
||||||
|
#expr); \
|
||||||
|
} while (0)
|
||||||
#ifdef G_DISABLE_ASSERT
|
#ifdef G_DISABLE_ASSERT
|
||||||
#define g_assert_not_reached() do { (void) 0; } while (0)
|
#define g_assert_not_reached() do { (void) 0; } while (0)
|
||||||
#define g_assert(expr) do { (void) 0; } while (0)
|
#define g_assert(expr) do { (void) 0; } while (0)
|
||||||
@ -73,7 +85,8 @@ typedef void (*GTestFixtureFunc) (gpointer fixture,
|
|||||||
#define g_assert_not_reached() do { g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, NULL); } while (0)
|
#define g_assert_not_reached() do { g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, NULL); } while (0)
|
||||||
#define g_assert(expr) do { if G_LIKELY (expr) ; else \
|
#define g_assert(expr) do { if G_LIKELY (expr) ; else \
|
||||||
g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
|
g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
|
||||||
#expr); } while (0)
|
#expr); \
|
||||||
|
} while (0)
|
||||||
#endif /* !G_DISABLE_ASSERT */
|
#endif /* !G_DISABLE_ASSERT */
|
||||||
|
|
||||||
GLIB_AVAILABLE_IN_ALL
|
GLIB_AVAILABLE_IN_ALL
|
||||||
|
Loading…
x
Reference in New Issue
Block a user