diff --git a/src/rcore.rs b/src/rcore.rs index d669484..a33bab2 100644 --- a/src/rcore.rs +++ b/src/rcore.rs @@ -17,6 +17,7 @@ mod points; mod regular; mod resolution; mod resolver_origin; +mod singular; mod topology; use std::{error::Error, sync::Arc}; @@ -41,6 +42,7 @@ pub use self::resolution::{ Address, HashResolution, HashResolutionResult, LookupError, Resolution, ResolutionError, ResolutionFailure, ResolutionResult, Resolver, ResolverMap, }; +pub use self::singular::SingularResolution; pub use self::topology::MentionableTop; /// Helper alias for [`WeakFunctor::F`] of [`FunctorContext::T`]. diff --git a/src/rcore/singular.rs b/src/rcore/singular.rs new file mode 100644 index 0000000..3bba249 --- /dev/null +++ b/src/rcore/singular.rs @@ -0,0 +1,7 @@ +use super::*; + +pub trait SingularResolution<'a, Ctx: Context<'a>>: 'a + Send + Sync { + fn singular(self: Arc) -> HashResolution<'a, Ctx>; + + fn s_hash(&self) -> Hash; +} diff --git a/src/rstd/singular.rs b/src/rstd/singular.rs index ed5a4ca..d96739f 100644 --- a/src/rstd/singular.rs +++ b/src/rstd/singular.rs @@ -1,14 +1,7 @@ use crate::func::context::*; -use crate::rcore::*; use super::*; -trait SingularResolution<'a, Ctx: Context<'a>>: 'a + Send + Sync { - fn singular(self: Arc) -> HashResolution<'a, Ctx>; - - fn s_hash(&self) -> Hash; -} - impl<'a, Ctx: Context<'a>, A: Mentionable<'a, Ctx>> SingularResolution<'a, Ctx> for Point<'a, Ctx, A> {