ccm/lib/commons.h

28 lines
589 B
C

#ifndef CCM_COMMONS_H
#define CCM_COMMONS_H
#include <math.h>
#include <stdarg.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <ctype.h>
#include <assert.h>
#define CCM_STRLEN 4096
#define CCM_ENUM_ENUM(X) X
#define CCM_ENUM_STR(X) #X
#define CCM_DEBUG(TARGET, FUN) \
{char m[CCM_STRLEN]; FUN(TARGET, m, CCM_STRLEN), printf("%s\n", m);}
#define CCM_ENUM_H(PREFIX, DEF) \
typedef enum { DEF(CCM_ENUM_ENUM) } PREFIX ; \
extern char const* PREFIX ## Str []
#define CCM_ENUM_C(PREFIX, DEF) \
char const* PREFIX ## Str [] = {DEF(CCM_ENUM_STR)}
#endif