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
sourceimpl IOExtensionPoint
impl IOExtensionPoint
sourcepub fn builder(name: &str) -> IOExtensionPointBuilder<'_>
pub fn builder(name: &str) -> IOExtensionPointBuilder<'_>
Create a new builder for an extension point.
sourcepub fn lookup(name: &str) -> Option<Self>
pub fn lookup(name: &str) -> 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: &str) -> Option<IOExtension>
pub fn extension_by_name(&self, name: &str) -> 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: &str,
type_: Type,
extension_name: &str,
priority: i32
) -> Option<IOExtension>
pub fn implement(
extension_point_name: &str,
type_: Type,
extension_name: &str,
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
sourceimpl Clone for IOExtensionPoint
impl Clone for IOExtensionPoint
sourcefn clone(&self) -> IOExtensionPoint
fn clone(&self) -> IOExtensionPoint
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for IOExtensionPoint
impl Debug for IOExtensionPoint
sourceimpl Display for IOExtensionPoint
impl Display for IOExtensionPoint
sourceimpl FromGlibPtrNone<*mut *mut _GIOExtensionPoint> for IOExtensionPoint
impl FromGlibPtrNone<*mut *mut _GIOExtensionPoint> for IOExtensionPoint
sourceunsafe fn from_glib_none(ptr: *mut GIOExtensionPoint) -> Self
unsafe fn from_glib_none(ptr: *mut GIOExtensionPoint) -> Self
Safety Read more
sourceimpl PartialEq<IOExtensionPoint> for IOExtensionPoint
impl PartialEq<IOExtensionPoint> for IOExtensionPoint
sourcefn eq(&self, other: &IOExtensionPoint) -> bool
fn eq(&self, other: &IOExtensionPoint) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &IOExtensionPoint) -> bool
fn ne(&self, other: &IOExtensionPoint) -> bool
This method tests for !=
.
sourceimpl<'a> ToGlibPtr<'a, *mut *mut _GIOExtensionPoint> for &'a IOExtensionPoint
impl<'a> ToGlibPtr<'a, *mut *mut _GIOExtensionPoint> for &'a IOExtensionPoint
type Storage = &'a IOExtensionPoint
sourcefn to_glib_none(
&self
) -> Stash<'a, *mut GIOExtensionPoint, &'a IOExtensionPoint>
fn to_glib_none(
&self
) -> Stash<'a, *mut GIOExtensionPoint, &'a IOExtensionPoint>
Transfer: none. Read more
sourcefn to_glib_container(&'a self) -> Stash<'a, P, Self>
fn to_glib_container(&'a self) -> Stash<'a, P, Self>
Transfer: container. Read more
sourcefn to_glib_full(&self) -> P
fn to_glib_full(&self) -> P
Transfer: full. Read more
impl Copy for IOExtensionPoint
impl Eq for IOExtensionPoint
impl StructuralEq for IOExtensionPoint
impl StructuralPartialEq for IOExtensionPoint
Auto Trait Implementations
impl RefUnwindSafe for IOExtensionPoint
impl !Send for IOExtensionPoint
impl !Sync for IOExtensionPoint
impl Unpin for IOExtensionPoint
impl UnwindSafe for IOExtensionPoint
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more