### Function Macro

# GObject IMPLEMENT_INTERFACE

since: 2.4

#### Declaration

    #define G_IMPLEMENT_INTERFACE (
      TYPE_IFACE,
      iface_init
    )

#### Description

A convenience macro to ease interface addition in the `_C_` section of G_DEFINE_TYPE_WITH_CODE() or G_DEFINE_ABSTRACT_TYPE_WITH_CODE(). See G_DEFINE_TYPE_EXTENDED() for an example.

Note that this macro can only be used together with the `G_DEFINE_TYPE_*` macros, since it depends on variable names from those macros.

Available since: 2.4

This function is not directly available to language bindings.

#### Parameters

`TYPE_IFACE`

  Type: `-`

  The `GType` of the interface to add.

`iface_init`

  Type: `-`

  The interface init function, of type `GInterfaceInitFunc`.