pub enum SolverRouter<T: CpuIDToken, M, S: Solver + From<M>, F: Solver + From<M>> {
Taken {
solver: S,
_marker: PhantomData<(T, M)>,
},
Fallback {
solver: F,
_marker: PhantomData<(T, M)>,
},
}Expand description
A solver router that can take a solver or a fallback solver based on the CPU features
Variants§
Trait Implementations§
Source§impl<T: Clone + CpuIDToken, M: Clone, S: Clone + Solver + From<M>, F: Clone + Solver + From<M>> Clone for SolverRouter<T, M, S, F>
impl<T: Clone + CpuIDToken, M: Clone, S: Clone + Solver + From<M>, F: Clone + Solver + From<M>> Clone for SolverRouter<T, M, S, F>
Source§fn clone(&self) -> SolverRouter<T, M, S, F>
fn clone(&self) -> SolverRouter<T, M, S, F>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl<T: Copy + CpuIDToken, M: Copy, S: Copy + Solver + From<M>, F: Copy + Solver + From<M>> Copy for SolverRouter<T, M, S, F>
Source§impl<T: Debug + CpuIDToken, M: Debug, S: Debug + Solver + From<M>, F: Debug + Solver + From<M>> Debug for SolverRouter<T, M, S, F>
impl<T: Debug + CpuIDToken, M: Debug, S: Debug + Solver + From<M>, F: Debug + Solver + From<M>> Debug for SolverRouter<T, M, S, F>
Source§impl<T: CpuIDToken, M, S: Solver + From<M>, F: Solver + From<M>> From<M> for SolverRouter<T, M, S, F>
impl<T: CpuIDToken, M, S: Solver + From<M>, F: Solver + From<M>> From<M> for SolverRouter<T, M, S, F>
Source§impl<T: CpuIDToken, M, S: Solver + From<M>, F: Solver + From<M>> Solver for SolverRouter<T, M, S, F>
impl<T: CpuIDToken, M, S: Solver + From<M>, F: Solver + From<M>> Solver for SolverRouter<T, M, S, F>
Auto Trait Implementations§
impl<T, M, S, F> Freeze for SolverRouter<T, M, S, F>
impl<T, M, S, F> RefUnwindSafe for SolverRouter<T, M, S, F>
impl<T, M, S, F> Send for SolverRouter<T, M, S, F>
impl<T, M, S, F> Sync for SolverRouter<T, M, S, F>
impl<T, M, S, F> Unpin for SolverRouter<T, M, S, F>
impl<T, M, S, F> UnsafeUnpin for SolverRouter<T, M, S, F>where
S: UnsafeUnpin,
F: UnsafeUnpin,
impl<T, M, S, F> UnwindSafe for SolverRouter<T, M, S, F>
Blanket Implementations§
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