Current section

Files

Jump to
membrane_common_c c_src membrane _generated nif membrane.cpp
Raw

c_src/membrane/_generated/nif/membrane.cpp

#include "membrane.h"
int send_membrane_log(UnifexEnv *env, UnifexPid pid, int flags,
const char *level, const char *message, const char *time,
const char **tags, unsigned int tags_length) {
ERL_NIF_TERM term = ({
const ERL_NIF_TERM terms[] = {
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;
})
};
enif_make_tuple_from_array(env, terms, 5);
});
return unifex_send(env, &pid, term, flags);
}