Unifex supports generating code both for usage with NIF's and CNode's. Nevertheless, some types can be not implemented yet. Below we present which types you can use at this moment. You can also refer to #42 to see state of work on remaining types.

Supported types

Elixir typeNative typein NIF as a function parameterin NIF as a return typein CNode as a function parameterin CNode as a return type
atomchar *✅✅✅✅
boolint✅✅✅✅
unsignedunsigned int✅✅✅✅
uint64uint64_t✅✅✅✅
intint✅✅✅✅
int64int64_t✅✅✅✅
floatdouble✅✅✅✅
payloadUnifexPayload✅✅✅✅
pidUnifexPid✅✅✅✅
stringchar *✅✅✅✅
[type]native_type *, unsigned int✅✅✅✅