Vips.type_map_all
Description: Reference for Vips.type_map_all

### Function

# Vipstype_map_all

#### Declaration [src]

    void*
    vips_type_map_all (
      GType base,
      VipsTypeMapFn fn,
      void* a
    )

#### Description [src]

Map over a type’s children, direct and indirect. Stop when `fn` returns non-`NULL` and return that value.

This function is not directly available to language bindings.

#### Parameters

`base`

  Type: `GType`

  Base type.

`fn`

  Type: `VipsTypeMapFn`

  Call this function for every type.

`a`

  Type: `void*`

  Client data.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

#### Return value

Type: `void*`

`NULL` if `fn` returns `NULL` for all arguments, otherwise the first non-`NULL` value from `fn`.

The data is owned by the called function.
The return value can be `NULL`.