ExecutionStrategy

Trait ExecutionStrategy 

Source
pub trait ExecutionStrategy<E, FL, L, K, FK, Aind>
where E: ExecuteOp<FL, L, K, FK, Aind>,
{ // Required method fn execute_all<C: ContractionStrategy<E, L, K, FK, Aind>>( executor: &mut E, graph: &mut NetworkGraph<K, FK, Aind>, lib: &L, fnlib: &FL, ) -> Result<(), TensorNetworkError<K, FK>> where K: Display, FK: Display; }

Required Methods§

Source

fn execute_all<C: ContractionStrategy<E, L, K, FK, Aind>>( executor: &mut E, graph: &mut NetworkGraph<K, FK, Aind>, lib: &L, fnlib: &FL, ) -> Result<(), TensorNetworkError<K, FK>>
where K: Display, FK: Display,

Run the entire contraction to one leaf.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<E, L, FL, K, FK, Aind: AbsInd> ExecutionStrategy<E, FL, L, K, FK, Aind> for Sequential
where E: ExecuteOp<FL, L, K, FK, Aind>, FK: Clone + Debug, K: Clone + Debug,

Source§

impl<const N: usize, E, FL, L, K, FK, Aind: AbsInd> ExecutionStrategy<E, FL, L, K, FK, Aind> for Steps<N>
where E: ExecuteOp<FL, L, K, FK, Aind>, K: Clone + Debug, FK: Clone + Debug,

Source§

impl<const N: usize, E, L, FL, FK, K, Aind: AbsInd> ExecutionStrategy<E, FL, L, K, FK, Aind> for StepsDebug<N>
where E: ExecuteOp<FL, L, K, FK, Aind>, K: Clone + Debug, FK: Clone + Debug,