Parameter points to an array of items.
This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.
Generics and defining elements of containers and arrays.
NULL may be passed as the value in, out, in-out; or as a return value.
The callback is valid until first called.
Free data after the code is done.
Don't free data after the code is done.