#ifndef __COMMON_H__ #define __COMMON_H__ #include #include #include #define getline(x, y, z) \ while(((x)[strcspn((x), "\r\n")] = 0) == 0 && strncmp((x), "", (y)) == 0) \ fgets((x), (y), (z)) #define consume(ptr, size, consumer, ...) \ (consumer)((ptr), ## __VA_ARGS__); \ strncpy((ptr), "", (size)) #define array(type, size) ((type *) calloc (sizeof(type), (size))) #define ref(x) const x * const #define mut(x) const x * #define ptr(x) x * #endif /* __COMMON_H__ */