typedef int (*http_data_cb) (http_parser*, const char *at, size_t length);
As far as I know, typedef assigns new name to types in standard library.In this situation an instance of *http_data_cb is an int, but how about (http_parser*, const char *at, size_t length)?
Here is the link of the whole code
Thanks,
http_data_cb : is a variable
(*http_data_cb): is a pointer variable
(*http_data_cb)(…): is a pointer variable to a function
(*http_data_cb)(http_parser*, const char *at, size_t length): is a pointer variable to a function that recieves (http_parser*, const char *at, size_t length)
int (*http_data_cb)(http_parser*, const char *at, size_t length): is a pointer variable to a function that recieves (http_parser*, const char *at, size_t length) and returns an int.
typedef int (*http_data_cb)(http_parser*, const char *at, size_t length): http_data_cb is declared to be a new datatype alias as a pointer variable to a function that recieves (http_parser*, const char *at, size_t length) and returns an int.