## Annotation Glossary

### A

array

  Parameter points to an array of items.

### C

closure

  This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.

### D

destroy

  This parameter is a 'destroy_data', for callbacks.

### E

element-type

  Generics and defining elements of containers and arrays.

### I

inout

  Parameter for input and for returning results. Default is transfer full.

### N

nullable

  NULL may be passed as the value in, out, in-out; or as a return value.

### O

optional

  NULL may be passed instead of a pointer to a location.

out

  Parameter for returning results. Default is transfer full.

out caller-allocates

  Out parameter, where caller must allocate storage.

### S

scope notified

  The callback is valid until the GDestroyNotify argument is called.

skip

  Exposed in C code, not necessarily available in other languages.

### 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.