A
NULL is OK, both for passing and for returning.
Parameter points to an array of items.
C
This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.
E
Generics and defining elements of containers and arrays.
I
Parameter for input and for returning results. Default is transfer full.
N
NULL may be passed as the value in, out, in-out; or as a return value.
O
NULL may be passed instead of a pointer to a location.
Parameter for returning results. Default is transfer full.
Out parameter, where caller must allocate storage.
S
The callback is valid only during the call to the method.
Exposed in C code, not necessarily available in other languages.
T
Free data container after the code is done.
Free data after the code is done.
Don't free data after the code is done.
U
Unstable interfaces are experimental or transitional. They are typically used to give outside developers early access to new or rapidly changing technology, or to provide an interim solution to a problem where a more general solution is anticipated. No claims are made about either source or binary compatibility from one minor release to the next. The Unstable interface level is a warning that these interfaces are subject to change without warning and should not be used in unbundled products. Given such caveats, customer impact need not be a factor when considering incompatible changes to an Unstable interface in a major or minor release. Nonetheless, when such changes are introduced, the changes should still be mentioned in the release notes for the affected release.