1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
use futures::Future; use popcorn::buffer::{Buffer, Error}; pub trait DotOperation<T: Copy + Send + 'static> { fn bcast_dot(&self, shape_a: Buffer<usize>, a: Buffer<T>, shape_b: Buffer<usize>, b: Buffer<T>, mut shape_c: Buffer<usize>, mut c: Buffer<T>) -> Box<Future<Item=(Buffer<usize>, Buffer<T>, // A Buffer<usize>, Buffer<T>, // B Buffer<usize>, Buffer<T>), Error=Error>>; // Result }