I don't understand those macros, how does it work?, also what is irc_##name ?..i've got this code from insobot IRC bot,here is the code https://github.com/baines/insobot/blob/master/src/insobot.c
#define IRC_CALLBACK_BASE(name, event_type) static void irc_##name ( \
irc_session_t* session, \
event_type event, \
const char* origin, \
const char** params, \
unsigned int count \
)
#define IRC_STR_CALLBACK(name) IRC_CALLBACK_BASE(name, const char*)
#define IRC_NUM_CALLBACK(name) IRC_CALLBACK_BASE(name, unsigned int)