#[repr(transparent)]pub struct PluginLibRef(pub PrefixRef<PluginLib_Prefix>);
Expand description
This is the pointer to the prefix of
PluginLib
.
This is automatically generated documentation,by the StableAbi derive macro.
§Creating a compiletime-constant
You can look at the docs in [::abi_stable::docs::prefix_types
] to see how you
can construct and use this and similar types.
More specifically in the
“constructing a module” example
or the
“Constructing a vtable” example
Tuple Fields§
§0: PrefixRef<PluginLib_Prefix>
Implementations§
source§impl PluginLibRef
impl PluginLibRef
sourcepub fn plugin(
&self,
) -> extern "C" fn(log_target: BoxDynLogTarget) -> RVec<PluginDefinition>
pub fn plugin( &self, ) -> extern "C" fn(log_target: BoxDynLogTarget) -> RVec<PluginDefinition>
Accessor method for the PluginLib::plugin
field.This is for a field which always exists.
source§impl PluginLibRef
impl PluginLibRef
sourcepub fn _prefix_type_layout(self) -> &'static PTStructLayout
pub fn _prefix_type_layout(self) -> &'static PTStructLayout
Accessor to get the layout of the type,used for error messages.
Trait Implementations§
source§impl Clone for PluginLibRef
impl Clone for PluginLibRef
source§impl GetPointerKind for PluginLibRef
impl GetPointerKind for PluginLibRef
source§impl GetStaticEquivalent_ for PluginLibRefwhere
PluginLib: PrefixTypeTrait,
impl GetStaticEquivalent_ for PluginLibRefwhere
PluginLib: PrefixTypeTrait,
source§type StaticEquivalent = PrefixRef<_static_PluginLib>
type StaticEquivalent = PrefixRef<_static_PluginLib>
The
'static
equivalent of Self
source§impl PrefixRefTrait for PluginLibRef
impl PrefixRefTrait for PluginLibRef
source§type PrefixFields = PluginLib_Prefix
type PrefixFields = PluginLib_Prefix
A struct that contains all the fields of some other struct
up to the field annotated with
#[sabi(last_prefix_field)]
inclusive. Read more§fn from_prefix_ref(this: PrefixRef<Self::PrefixFields>) -> Self
fn from_prefix_ref(this: PrefixRef<Self::PrefixFields>) -> Self
Converts a
PrefixRef
to Self
§fn to_prefix_ref(self) -> PrefixRef<Self::PrefixFields>
fn to_prefix_ref(self) -> PrefixRef<Self::PrefixFields>
Converts
Self
to a PrefixRef
source§impl RootModule for PluginLibRef
impl RootModule for PluginLibRef
source§const BASE_NAME: &'static str = "gravel_ffi"
const BASE_NAME: &'static str = "gravel_ffi"
The name of the dynamic library,which is the same on all platforms.
This is generally the name of the
implementation crate
.source§const VERSION_STRINGS: VersionStrings = _
const VERSION_STRINGS: VersionStrings = _
The version number of the library that this is a root module of. Read more
source§fn root_module_statics() -> &'static RootModuleStatics<PluginLibRef>
fn root_module_statics() -> &'static RootModuleStatics<PluginLibRef>
Gets the statics for Self. Read more
§const CONSTANTS_NO_ABI_INFO: RootModuleConsts = _
const CONSTANTS_NO_ABI_INFO: RootModuleConsts = _
Like
Self::CONSTANTS
,
except without including the type layout constant for the root module.§fn get_module() -> Option<Self>
fn get_module() -> Option<Self>
Gets the root module,returning None if the module is not yet loaded.
§fn get_raw_library() -> Option<&'static RawLibrary>
fn get_raw_library() -> Option<&'static RawLibrary>
Gets the RawLibrary of the module,
returning None if the dynamic library failed to load
(it doesn’t exist or layout checking failed). Read more
§fn get_library_path(directory: &Path) -> PathBuf
fn get_library_path(directory: &Path) -> PathBuf
Returns the path the library would be loaded from,given a directory(folder).
§fn load_module_with<F, E>(f: F) -> Result<Self, E>
fn load_module_with<F, E>(f: F) -> Result<Self, E>
Loads the root module,with a closure which either
returns the root module or an error. Read more
§fn load_from(where_: LibraryPath<'_>) -> Result<Self, LibraryError>
fn load_from(where_: LibraryPath<'_>) -> Result<Self, LibraryError>
Loads this module from the path specified by
where_
,
first loading the dynamic library if it wasn’t already loaded. Read more§fn load_from_directory(where_: &Path) -> Result<Self, LibraryError>
fn load_from_directory(where_: &Path) -> Result<Self, LibraryError>
Loads this module from the directory specified by
where_
,
first loading the dynamic library if it wasn’t already loaded. Read more§fn load_from_file(path_: &Path) -> Result<Self, LibraryError>
fn load_from_file(path_: &Path) -> Result<Self, LibraryError>
Loads this module from the file at
path_
,
first loading the dynamic library if it wasn’t already loaded. Read more§fn initialization(self) -> Result<Self, LibraryError>
fn initialization(self) -> Result<Self, LibraryError>
Defines behavior that happens once the module is loaded. Read more
source§impl StableAbi for PluginLibRefwhere
PluginLib: PrefixTypeTrait,
impl StableAbi for PluginLibRefwhere
PluginLib: PrefixTypeTrait,
source§const LAYOUT: &'static TypeLayout = <__sabi_re::PrefixRef<PluginLib_Prefix> as __sabi_re::StableAbi>::LAYOUT
const LAYOUT: &'static TypeLayout = <__sabi_re::PrefixRef<PluginLib_Prefix> as __sabi_re::StableAbi>::LAYOUT
The layout of the type provided by implementors.
source§type IsNonZeroType = True
type IsNonZeroType = True
Whether this type has a single invalid bit-pattern. Read more
§const ABI_CONSTS: AbiConsts = _
const ABI_CONSTS: AbiConsts = _
const
-equivalents of the associated types.impl Copy for PluginLibRef
Auto Trait Implementations§
impl Freeze for PluginLibRef
impl RefUnwindSafe for PluginLibRef
impl Send for PluginLibRef
impl Sync for PluginLibRef
impl Unpin for PluginLibRef
impl UnwindSafe for PluginLibRef
Blanket Implementations§
§impl<T> AlignerFor<1> for T
impl<T> AlignerFor<1> for T
§impl<T> AlignerFor<1024> for T
impl<T> AlignerFor<1024> for T
§impl<T> AlignerFor<128> for T
impl<T> AlignerFor<128> for T
§impl<T> AlignerFor<16> for T
impl<T> AlignerFor<16> for T
§impl<T> AlignerFor<16384> for T
impl<T> AlignerFor<16384> for T
§impl<T> AlignerFor<2> for T
impl<T> AlignerFor<2> for T
§impl<T> AlignerFor<2048> for T
impl<T> AlignerFor<2048> for T
§impl<T> AlignerFor<256> for T
impl<T> AlignerFor<256> for T
§impl<T> AlignerFor<32> for T
impl<T> AlignerFor<32> for T
§impl<T> AlignerFor<32768> for T
impl<T> AlignerFor<32768> for T
§impl<T> AlignerFor<4> for T
impl<T> AlignerFor<4> for T
§impl<T> AlignerFor<4096> for T
impl<T> AlignerFor<4096> for T
§impl<T> AlignerFor<512> for T
impl<T> AlignerFor<512> for T
§impl<T> AlignerFor<64> for T
impl<T> AlignerFor<64> for T
§impl<T> AlignerFor<8> for T
impl<T> AlignerFor<8> for T
§impl<T> AlignerFor<8192> for T
impl<T> AlignerFor<8192> for T
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<T> ImmutableRef for Twhere
T: Copy + GetPointerKind<Kind = PK_Reference>,
impl<T> ImmutableRef for Twhere
T: Copy + GetPointerKind<Kind = PK_Reference>,
§fn to_nonnull(self) -> NonNull<Self::PtrTarget>
fn to_nonnull(self) -> NonNull<Self::PtrTarget>
Converts this pointer to a
NonNull
.§unsafe fn from_nonnull(from: NonNull<Self::PtrTarget>) -> Self
unsafe fn from_nonnull(from: NonNull<Self::PtrTarget>) -> Self
Constructs this pointer from a
NonNull
. Read more§fn to_raw_ptr(self) -> *const Self::PtrTarget
fn to_raw_ptr(self) -> *const Self::PtrTarget
Converts this pointer to a raw pointer.
§unsafe fn from_raw_ptr(from: *const Self::PtrTarget) -> Option<Self>
unsafe fn from_raw_ptr(from: *const Self::PtrTarget) -> Option<Self>
Constructs this pointer from a raw pointer. Read more
§impl<M> IntoRootModuleResult for Mwhere
M: RootModule,
impl<M> IntoRootModuleResult for Mwhere
M: RootModule,
§fn into_root_module_result(self) -> Result<M, RootModuleError>
fn into_root_module_result(self) -> Result<M, RootModuleError>
Performs the conversion
§impl<'a, T> RCowCompatibleRef<'a> for Twhere
T: Clone + 'a,
impl<'a, T> RCowCompatibleRef<'a> for Twhere
T: Clone + 'a,
§impl<S> ROExtAcc for S
impl<S> ROExtAcc for S
§fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
Gets a reference to a field, determined by
offset
. Read more§fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
Gets a muatble reference to a field, determined by
offset
. Read more§fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
Gets a const pointer to a field,
the field is determined by
offset
. Read more§fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
Gets a mutable pointer to a field, determined by
offset
. Read more§impl<S> ROExtOps<Aligned> for S
impl<S> ROExtOps<Aligned> for S
§fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
Replaces a field (determined by
offset
) with value
,
returning the previous value of the field. Read more§fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> Fwhere
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> Fwhere
F: Copy,
§impl<S> ROExtOps<Unaligned> for S
impl<S> ROExtOps<Unaligned> for S
§fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
Replaces a field (determined by
offset
) with value
,
returning the previous value of the field. Read more§fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> Fwhere
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> Fwhere
F: Copy,
§impl<T> SelfOps for Twhere
T: ?Sized,
impl<T> SelfOps for Twhere
T: ?Sized,
§fn piped<F, U>(self, f: F) -> U
fn piped<F, U>(self, f: F) -> U
Emulates the pipeline operator, allowing method syntax in more places. Read more
§fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
The same as
piped
except that the function takes &Self
Useful for functions that take &Self
instead of Self
. Read more§fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
The same as
piped
, except that the function takes &mut Self
.
Useful for functions that take &mut Self
instead of Self
.§fn mutated<F>(self, f: F) -> Self
fn mutated<F>(self, f: F) -> Self
Mutates self using a closure taking self by mutable reference,
passing it along the method chain. Read more
§fn observe<F>(self, f: F) -> Self
fn observe<F>(self, f: F) -> Self
Observes the value of self, passing it along unmodified.
Useful in long method chains. Read more
§fn as_ref_<T>(&self) -> &T
fn as_ref_<T>(&self) -> &T
Performs a reference to reference conversion with
AsRef
,
using the turbofish .as_ref_::<_>()
syntax. Read more§impl<This> TransmuteElement for Thiswhere
This: ?Sized,
impl<This> TransmuteElement for Thiswhere
This: ?Sized,
§unsafe fn transmute_element<T>(self) -> Self::TransmutedPtrwhere
Self: CanTransmuteElement<T>,
unsafe fn transmute_element<T>(self) -> Self::TransmutedPtrwhere
Self: CanTransmuteElement<T>,
Transmutes the element type of this pointer.. Read more
§impl<T> TypeIdentity for Twhere
T: ?Sized,
impl<T> TypeIdentity for Twhere
T: ?Sized,
§fn as_type_mut(&mut self) -> &mut Self::Type
fn as_type_mut(&mut self) -> &mut Self::Type
Converts a mutable reference back to the original type.
§fn into_type_box(self: Box<Self>) -> Box<Self::Type>
fn into_type_box(self: Box<Self>) -> Box<Self::Type>
Converts a box back to the original type.
§fn into_type_arc(this: Arc<Self>) -> Arc<Self::Type>
fn into_type_arc(this: Arc<Self>) -> Arc<Self::Type>
Converts an Arc back to the original type. Read more
§fn into_type_rc(this: Rc<Self>) -> Rc<Self::Type>
fn into_type_rc(this: Rc<Self>) -> Rc<Self::Type>
Converts an Rc back to the original type. Read more
§fn from_type_ref(this: &Self::Type) -> &Self
fn from_type_ref(this: &Self::Type) -> &Self
Converts a reference back to the original type.
§fn from_type_mut(this: &mut Self::Type) -> &mut Self
fn from_type_mut(this: &mut Self::Type) -> &mut Self
Converts a mutable reference back to the original type.
§fn from_type_box(this: Box<Self::Type>) -> Box<Self>
fn from_type_box(this: Box<Self::Type>) -> Box<Self>
Converts a box back to the original type.
§fn from_type_arc(this: Arc<Self::Type>) -> Arc<Self>
fn from_type_arc(this: Arc<Self::Type>) -> Arc<Self>
Converts an Arc back to the original type.
§fn from_type_rc(this: Rc<Self::Type>) -> Rc<Self>
fn from_type_rc(this: Rc<Self::Type>) -> Rc<Self>
Converts an Rc back to the original type.