create_extension
Description:
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 [alias@Extension] 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 [ctor@GObject.Object.new] yourself).
The new extension instance produced by this function will always be returned wrapped in a Extension 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 [alias@GObject.Type] and not just an Interface [alias@GObject.Type].
Parameters:
this |
A Engine. |
info |
A loaded PluginInfo. |
extension_type |
The implemented extension Type. |
... |
the value of the first property, followed optionally by more name/value pairs, followed by null. |
first_property |
the name of the first property. |
Returns:
a new instance of Extension wrapping the |