NULL is ok, both for passing and for returning.
Generics and defining elements of containers and arrays.
Alias for transfer none, used for objects with floating refs.
Free data after the code is done.
Don't free data after the code is done.