aboutsummaryrefslogtreecommitdiffstats
path: root/libgamma_value_of_error.c
blob: 41ca40f362b8a4d6b9550472acadce7274bc0537 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* See LICENSE file for copyright and license details. */
#include "common.h"


/**
 * Get the value of a `libgamma` error definition refered to by name
 * 
 * @param   name  The name of the definition associated with the error code
 * @return        The error code, zero if the name is `NULL`
 *                or does not refer to a `libgamma` error
 */
int
libgamma_value_of_error(const char *name)
{
	if (!name)
		return 0;
#define X(NAME, ...)\
	if (!strcmp(name, #NAME))\
		return NAME;
	LIST_ERRORS(X)
	#undef X
	return 0;
}