# Annotation Glossary

### A

allow-none

  NULL is OK, both for passing and for returning.

array

  Parameter points to an array of items.

### C

closure

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

constructor

  This symbol is a constructor, not a static method.

### D

destroy

  This parameter is a 'destroy_data', for callbacks.

### E

element-type

  Generics and defining elements of containers and arrays.

### O

out

  Parameter for returning results. Default is transfer full.

out caller-allocates

  Out parameter, where caller must allocate storage.

### S

scope async

  The callback is valid until first called.

scope call

  The callback is valid only during the call to the method.

### T

transfer full

  Free data after the code is done.

transfer none

  Don't free data after the code is done.

type

  Override the parsed C type with given type.