Method

GIRepositoryRepositoryget_object_gtype_interfaces

since: 2.80

Declaration

void
gi_repository_get_object_gtype_interfaces (
  GIRepository* repository,
  GType gtype,
  size_t* n_interfaces_out,
  GIInterfaceInfo*** interfaces_out
)

Description

Look up the implemented interfaces for gtype.

This function cannot fail per se; but for a totally ‘unknown’ GType, it may return 0 implemented interfaces.

The semantics of this function are designed for a dynamic binding, where in certain cases (such as a function which returns an interface which may have ‘hidden’ implementation classes), not all data may be statically known, and will have to be determined from the GType of the object. An example is g_file_new_for_path() returning a concrete class of GLocalFile, which is a GType we see at runtime, but not statically.

Available since: 2.80

Parameters

gtype

Type: GType

A GType whose fundamental type is G_TYPE_OBJECT

n_interfaces_out

Type: size_t*

Number of interfaces.

The argument will be set by the function.
interfaces_out

Type: An array of GIInterfaceInfo**

Interfaces for gtype.

The argument will be set by the function.
The length of the array is specified in the n_interfaces_out argument.
The data is owned by the caller of the function.