A
NULL is OK, both for passing and for returning.
C
This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.
E
Typed errors. Similar to throws in Java.
I
Parameter for input. Default is transfer none.
O
Parameter for returning results. Default is transfer full.
S
The callback is valid until first called.
T
Free data after the code is done.
Don't free data after the code is done.