From e0216c7cbf008f2867ef92955abce28dba27f5e3 Mon Sep 17 00:00:00 2001 From: HampusM Date: Fri, 4 Aug 2023 16:32:46 +0200 Subject: refactor: rename CastFromSync to CastFromArc --- src/private/any_factory.rs | 4 ++-- src/private/cast/arc.rs | 4 ++-- src/private/cast/mod.rs | 10 +++++----- src/private/factory.rs | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) (limited to 'src/private') diff --git a/src/private/any_factory.rs b/src/private/any_factory.rs index bdd68a6..64af57e 100644 --- a/src/private/any_factory.rs +++ b/src/private/any_factory.rs @@ -2,10 +2,10 @@ use std::fmt::Debug; -use crate::private::cast::{CastFrom, CastFromSync}; +use crate::private::cast::{CastFrom, CastFromArc}; /// Interface for any factory to ever exist. pub trait AnyFactory: CastFrom + Debug {} /// Interface for any threadsafe factory to ever exist. -pub trait AnyThreadsafeFactory: CastFromSync + Debug {} +pub trait AnyThreadsafeFactory: CastFromArc + Debug {} diff --git a/src/private/cast/arc.rs b/src/private/cast/arc.rs index 7ea8b49..1fbdf8b 100644 --- a/src/private/cast/arc.rs +++ b/src/private/cast/arc.rs @@ -13,7 +13,7 @@ use std::any::type_name; use std::sync::Arc; use crate::private::cast::error::CastError; -use crate::private::cast::{get_caster, CastFromSync}; +use crate::private::cast::{get_caster, CastFromArc}; pub trait CastArc { @@ -23,7 +23,7 @@ pub trait CastArc /// A blanket implementation of `CastArc` for traits extending `CastFrom`, `Sync`, and /// `Send`. -impl CastArc for CastFromSelf +impl CastArc for CastFromSelf { fn cast(self: Arc) -> Result, CastError> { diff --git a/src/private/cast/mod.rs b/src/private/cast/mod.rs index 0b80057..ddff2a4 100644 --- a/src/private/cast/mod.rs +++ b/src/private/cast/mod.rs @@ -153,7 +153,7 @@ pub trait CastFrom: Any + 'static fn rc_any(self: Rc) -> Rc; } -/// `CastFromSync` must be extended by a trait that is `Any + Sync + Send + 'static` +/// This trait must be extended by a trait that is `Any + Sync + Send + 'static` /// and wants to allow for casting into another trait behind references and smart pointers /// especially including `Arc`. /// @@ -163,11 +163,11 @@ pub trait CastFrom: Any + 'static /// /// # Examples /// ```ignore -/// trait Source: CastFromSync { +/// trait Source: CastFromArc { /// ... /// } /// ``` -pub trait CastFromSync: CastFrom + Sync + Send + 'static +pub trait CastFromArc: CastFrom + Sync + Send + 'static { fn arc_any(self: Arc) -> Arc; } @@ -198,7 +198,7 @@ impl CastFrom for dyn Any + 'static } } -impl CastFromSync for Source +impl CastFromArc for Source { fn arc_any(self: Arc) -> Arc { @@ -219,7 +219,7 @@ impl CastFrom for dyn Any + Sync + Send + 'static } } -impl CastFromSync for dyn Any + Sync + Send + 'static +impl CastFromArc for dyn Any + Sync + Send + 'static { fn arc_any(self: Arc) -> Arc { diff --git a/src/private/factory.rs b/src/private/factory.rs index 8b8354d..84b00c6 100644 --- a/src/private/factory.rs +++ b/src/private/factory.rs @@ -15,7 +15,7 @@ where /// Interface for a threadsafe factory. #[cfg(feature = "async")] pub trait IThreadsafeFactory: - Fn> + crate::private::cast::CastFromSync + Fn> + crate::private::cast::CastFromArc where Args: Tuple, ReturnInterface: 'static + ?Sized, -- cgit v1.2.3-18-g5258