* http://www.efficios.com/ctf
*/
+/* For bt_bool */
+#include <babeltrace/types.h>
+
#ifdef __cplusplus
extern "C" {
#endif
-/*
- * bt_ctf_validate_identifier: validate an identifier against the CTF spec.
- *
- * Validate that an identifier meets the CTF specification's restrictions on
- * identifiers. An identifier will be rejected if it is a keyword defined
- * in the CTF specification or if it does not meet any other requirement imposed
- * on identifiers.
- *
- * Note that this will not check whether or not the identifier clashes with
- * identifiers used in a given trace.
- *
- * Returns 0 if the identifier is valid, a negative value on error.
- */
+/**
+@defgroup ctfirutils CTF IR utilities
+@ingroup ctfir
+@brief CTF IR utilities.
+
+@code
+#include <babeltrace/ctf-ir/utils.h>
+@endcode
+
+@file
+@brief CTF IR utilities functions.
+@sa ctfirutils
+
+@addtogroup ctfirutils
+@{
+*/
+
+/**
+@brief Returns whether or not the string \p identifier is a valid
+ identifier according to CTF.
+
+This function returns a negative value if \p identifier is a CTF keyword
+or if it does not meet any other imposed requirement.
+
+@param[in] identifier String to test.
+@returns #BT_TRUE if \p identifier is a valid CTF
+ identifier, or #BT_FALSE otherwise.
+
+@prenotnull{identifier}
+*/
+extern bt_bool bt_identifier_is_valid(const char *identifier);
+
+/** @} */
+
+/* Pre-2.0 CTF writer compatibility */
extern int bt_ctf_validate_identifier(const char *identifier);
#ifdef __cplusplus