Method
PeasEnginecreate_extension
Declaration [src]
PeasExtension*
peas_engine_create_extension (
PeasEngine* engine,
PeasPluginInfo* info,
GType extension_type,
const gchar* first_property,
...
)
Description [src]
If the plugin identified by info implements the extension_type,
then this function will return a new instance of this implementation,
wrapped in a new PeasExtension instance. Otherwise, it will return NULL.
When creating the new instance of the extension_type subtype, the
provided construct properties will be passed to the extension construction
handler (exactly like if you had called g_object_new() yourself).
The new extension instance produced by this function will always be
returned wrapped in a PeasExtension proxy, following the current libpeas
principle of never giving you the actual object (also because it might as
well not be an actual object).
Since libpeas 1.22, extension_type can be an Abstract GType
and not just an Interface GType.
This method is not directly available to language bindings.
The implementation of this method is provided by peas_engine_create_extension_with_properties() in language bindings.
Parameters
info-
Type:
PeasPluginInfoA loaded
PeasPluginInfo.The data is owned by the caller of the method. extension_type-
Type:
GTypeThe implemented extension
GType. first_property-
Type:
const gchar*The name of the first property.
The data is owned by the caller of the method. The value is a NUL terminated UTF-8 string. ...-
Type:
The value of the first property, followed optionally by more name/value pairs, followed by
NULL.
Return value
Type: PeasExtension
A new instance of PeasExtension wrapping
the extension_type instance, or NULL.
| The returned data is owned by the instance. |