Current section
Files
Jump to
Current section
Files
c_src/membrane/_generated/log.c
#include "log.h"
int send_membrane_log(UnifexEnv* env, UnifexPid pid, int flags, char* level, char* message, char* time, char** tags, unsigned int tags_length) {
ERL_NIF_TERM term = enif_make_tuple_from_array(
env,
(ERL_NIF_TERM []) {
enif_make_atom(env, "membrane_log"),
enif_make_atom(env, level),
unifex_string_to_term(env, message),
unifex_string_to_term(env, time),
({
ERL_NIF_TERM list = enif_make_list(env, 0);
for(int i = tags_length-1; i >= 0; i--) {
list = enif_make_list_cell(
env,
enif_make_atom(env, tags[i]),
list
);
}
list;
})
},
5
);
return unifex_send(env, &pid, term, flags);
}