### Function

# Vips Argument map

#### Declaration [src]

    void*
    vips_argument_map (
      VipsObject* object,
      VipsArgumentMapFn fn,
      void* a,
      void* b
    )

#### Description [src]

Loop over the `VipsArgument` of an object. Stop when `fn` returns non-`NULL` and return that value.

#### Parameters

`object`

  Type: `VipsObject`

  Object whose args should be enumerated.

  The data is owned by the caller of the function.

`fn`

  Type: `VipsArgumentMapFn`

  Call this function for every argument.

`a`

  Type: `void*`

  Client data.

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

`b`

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