Method

GIRepositoryObjectInfofind_vfunc_using_interfaces

since: 2.80

Declaration

GIVFuncInfo*
gi_object_info_find_vfunc_using_interfaces (
  GIObjectInfo* info,
  const char* name,
  GIBaseInfo** declarer
)

Description

Locate a virtual function slot with name name, searching both the object info and any interfaces it implements.

NULL will be returned if there’s no vfunc available with that name.

Note that the namespace for virtuals is distinct from that of methods; there may or may not be a concrete method associated for a virtual. If there is one, it may be retrieved using gi_vfunc_info_get_invoker(), otherwise that method will return NULL.

Note that this function does not search parent classes; you will have to chain up if that’s desired.

Available since: 2.80

Parameters

name

Type: const char*

Name of vfunc to obtain.

The data is owned by the caller of the function.
The value is a NUL terminated UTF-8 string.
declarer

Type: GIBaseInfo

The GIObjectInfo or GIInterfaceInfo which declares the vfunc, or NULL to ignore. If no vfunc is found, this will return NULL.

The argument will be set by the function.
The argument can be set to NULL by the method.
The argument can be NULL.
The instance takes ownership of the data, and is responsible for freeing it.

Return value

Type: GIVFuncInfo

The GIVFuncInfo, or NULL if none was found. Free the struct by calling gi_base_info_unref() when done.

The caller of the method takes ownership of the data, and is responsible for freeing it.
The return value can be NULL.