M
method
This is a method
N
nullable
NULL may be passed as the value in, out, in-out; or as a return value.
T
transfer full
The caller owns the data, and is responsible for free it.
transfer none
The data is owned by the callee, which is responsible of freeing it.