Struct gio::IOExtensionPoint
source · pub struct IOExtensionPoint(_);Expand description
An extension point provides a mechanism to extend the functionality of a library or application.
Each extension point is identified by a name, and it may optionally require that any implementation
must be of a certain type.
IOExtensionPoint is an opaque data structure and can only be accessed
using the following functions.
Implementations§
source§impl IOExtensionPoint
impl IOExtensionPoint
sourcepub fn builder(name: impl Into<GString>) -> IOExtensionPointBuilder
pub fn builder(name: impl Into<GString>) -> IOExtensionPointBuilder
Create a new builder for an extension point.
sourcepub fn lookup(name: impl IntoGStr) -> Option<Self>
pub fn lookup(name: impl IntoGStr) -> Option<Self>
Looks up an existing extension point.
name
the name of the extension point
Returns
the IOExtensionPoint, or None if there
is no registered extension point with the given name.
sourcepub fn extensions(&self) -> Vec<IOExtension>
pub fn extensions(&self) -> Vec<IOExtension>
Gets a list of all extensions that implement this extension point. The list is sorted by priority, beginning with the highest priority.
Returns
a GList of
GIOExtensions. The list is owned by GIO and should not be
modified.
sourcepub fn extension_by_name(&self, name: impl IntoGStr) -> Option<IOExtension>
pub fn extension_by_name(&self, name: impl IntoGStr) -> Option<IOExtension>
Finds a IOExtension for an extension point by name.
name
the name of the extension to get
Returns
the IOExtension for self that has the
given name, or None if there is no extension with that name
sourcepub fn required_type(&self) -> Type
pub fn required_type(&self) -> Type
Gets the required type for self.
Returns
the GType that all implementations must have,
or G_TYPE_INVALID if the extension point has no required type
sourcepub fn implement(
extension_point_name: impl IntoGStr,
type_: Type,
extension_name: impl IntoGStr,
priority: i32
) -> Option<IOExtension>
pub fn implement( extension_point_name: impl IntoGStr, type_: Type, extension_name: impl IntoGStr, priority: i32 ) -> Option<IOExtension>
Registers type_ as extension for the extension point with name
extension_point_name.
If type_ has already been registered as an extension for this
extension point, the existing IOExtension object is returned.
extension_point_name
the name of the extension point
type_
the GType to register as extension
extension_name
the name for the extension
priority
the priority for the extension
Returns
a IOExtension object for GType
Trait Implementations§
source§impl Clone for IOExtensionPoint
impl Clone for IOExtensionPoint
source§fn clone(&self) -> IOExtensionPoint
fn clone(&self) -> IOExtensionPoint
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for IOExtensionPoint
impl Debug for IOExtensionPoint
source§impl Display for IOExtensionPoint
impl Display for IOExtensionPoint
source§impl FromGlibPtrNone<*mut *mut _GIOExtensionPoint> for IOExtensionPoint
impl FromGlibPtrNone<*mut *mut _GIOExtensionPoint> for IOExtensionPoint
source§unsafe fn from_glib_none(ptr: *mut GIOExtensionPoint) -> Self
unsafe fn from_glib_none(ptr: *mut GIOExtensionPoint) -> Self
source§impl PartialEq<IOExtensionPoint> for IOExtensionPoint
impl PartialEq<IOExtensionPoint> for IOExtensionPoint
source§fn eq(&self, other: &IOExtensionPoint) -> bool
fn eq(&self, other: &IOExtensionPoint) -> bool
self and other values to be equal, and is used
by ==.