[−][src]Struct remote_trait_object::raw_exchange::Skeleton
An opaque service to register in the context.
See the general description of the concept skeleton here and the definition in this crate here.
It is constructed with a service object with whichever smart pointer you want.
Depending on use of &mut self
in the methods in the service trait, some or all Box<>
, Arc<>
, Arc<RwLock<>>
will implement
IntoSkeleton
automatically by the proc macro.
Please see this section for more detail about smart pointers.
Skeleton
is useful when you want to erase the trait, and hold it as an opaque service that will be registered later.
Note that you will never need this if you do only plain export & import using ServiceRef
, ServiceToExport
, or ServiceToImport
.
See the module-level documentation to understand when to use this.
Implementations
impl Skeleton
[src]
pub fn new<T: ?Sized + Service>(service: impl IntoSkeleton<T>) -> Self
[src]
Trait Implementations
impl Clone for Skeleton
[src]
fn clone(&self) -> Self
[src]
Clones a Skeleton
, while sharing the actual single service object.
This is useful when you want to export a single service object to multiple connections.
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Auto Trait Implementations
impl !RefUnwindSafe for Skeleton
impl Send for Skeleton
impl Sync for Skeleton
impl Unpin for Skeleton
impl !UnwindSafe for Skeleton
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,