pub enum Platform {
Host(Host),
}Expand description
The global platform, responsible for delegating to specific hardware platforms
Variants§
Trait Implementations§
Source§impl<L, R, T> ElementwiseBoolean<L, R, T> for Platform
Available on non-crate feature opencl only.
impl<L, R, T> ElementwiseBoolean<L, R, T> for Platform
Available on non-crate feature
opencl only.Source§impl<A: Access<T>, T: CType> ElementwiseBooleanScalar<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: CType> ElementwiseBooleanScalar<A, T> for Platform
Available on non-crate feature
opencl only.type Op = Scalar<A, T, u8>
fn and_scalar( self, left: A, right: T, ) -> Result<AccessOp<Self::Op, Self>, Error>
fn or_scalar(self, left: A, right: T) -> Result<AccessOp<Self::Op, Self>, Error>
fn xor_scalar( self, left: A, right: T, ) -> Result<AccessOp<Self::Op, Self>, Error>
Source§impl<A: Access<IT>, IT: CType, OT: CType> ElementwiseCast<A, IT, OT> for Platform
Available on non-crate feature opencl only.
impl<A: Access<IT>, IT: CType, OT: CType> ElementwiseCast<A, IT, OT> for Platform
Available on non-crate feature
opencl only.Source§impl<L, R, T> ElementwiseCompare<L, R, T> for Platform
Available on non-crate feature opencl only.
impl<L, R, T> ElementwiseCompare<L, R, T> for Platform
Available on non-crate feature
opencl only.type Op = Dual<L, R, T, u8>
fn eq(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn ge(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn gt(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn le(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn lt(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn ne(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
Source§impl<L, R, T> ElementwiseDual<L, R, T> for Platform
Available on non-crate feature opencl only.
impl<L, R, T> ElementwiseDual<L, R, T> for Platform
Available on non-crate feature
opencl only.type Op = Dual<L, R, T, T>
fn add(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn div(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn log(self, arg: L, base: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn mul(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn pow(self, arg: L, exp: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn rem(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
fn sub(self, left: L, right: R) -> Result<AccessOp<Self::Op, Self>, Error>
Source§impl<A: Access<T>, T: Float> ElementwiseNumeric<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: Float> ElementwiseNumeric<A, T> for Platform
Available on non-crate feature
opencl only.Source§impl<A: Access<T>, T: CType> ElementwiseScalar<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: CType> ElementwiseScalar<A, T> for Platform
Available on non-crate feature
opencl only.type Op = Scalar<A, T, T>
fn add_scalar( self, left: A, right: T, ) -> Result<AccessOp<Self::Op, Self>, Error>
fn div_scalar( self, left: A, right: T, ) -> Result<AccessOp<Self::Op, Self>, Error>
fn log_scalar(self, arg: A, base: T) -> Result<AccessOp<Self::Op, Self>, Error>
fn mul_scalar( self, left: A, right: T, ) -> Result<AccessOp<Self::Op, Self>, Error>
fn pow_scalar(self, arg: A, exp: T) -> Result<AccessOp<Self::Op, Self>, Error>
fn rem_scalar( self, left: A, right: T, ) -> Result<AccessOp<Self::Op, Self>, Error>
fn sub_scalar( self, left: A, right: T, ) -> Result<AccessOp<Self::Op, Self>, Error>
Source§impl<A: Access<T>, T: CType> ElementwiseScalarCompare<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: CType> ElementwiseScalarCompare<A, T> for Platform
Available on non-crate feature
opencl only.type Op = Scalar<A, T, u8>
fn eq_scalar(self, left: A, right: T) -> Result<AccessOp<Self::Op, Self>, Error>
fn ge_scalar(self, left: A, right: T) -> Result<AccessOp<Self::Op, Self>, Error>
fn gt_scalar(self, left: A, right: T) -> Result<AccessOp<Self::Op, Self>, Error>
fn le_scalar(self, left: A, right: T) -> Result<AccessOp<Self::Op, Self>, Error>
fn lt_scalar(self, left: A, right: T) -> Result<AccessOp<Self::Op, Self>, Error>
fn ne_scalar(self, left: A, right: T) -> Result<AccessOp<Self::Op, Self>, Error>
Source§impl<A: Access<T>, T: CType> ElementwiseTrig<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: CType> ElementwiseTrig<A, T> for Platform
Available on non-crate feature
opencl only.type Op = Unary<A, T, <T as CType>::Float>
fn sin(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn asin(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn sinh(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn cos(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn acos(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn cosh(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn tan(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn atan(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn tanh(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
Source§impl<A: Access<T>, T: CType> ElementwiseUnary<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: CType> ElementwiseUnary<A, T> for Platform
Available on non-crate feature
opencl only.type Op = Unary<A, T, T>
fn abs(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn exp(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn ln(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
fn round(self, access: A) -> Result<AccessOp<Self::Op, Self>, Error>
Source§impl<A: Access<T>, T: CType> ElementwiseUnaryBoolean<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: CType> ElementwiseUnaryBoolean<A, T> for Platform
Available on non-crate feature
opencl only.Source§impl<A, L, R, T> GatherCond<A, L, R, T> for Platform
Available on non-crate feature opencl only.
impl<A, L, R, T> GatherCond<A, L, R, T> for Platform
Available on non-crate feature
opencl only.Source§impl<L, R, T> LinAlgDual<L, R, T> for Platform
Available on non-crate feature opencl only.
impl<L, R, T> LinAlgDual<L, R, T> for Platform
Available on non-crate feature
opencl only.Source§impl<A: Access<T>, T: CType> LinAlgUnary<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: CType> LinAlgUnary<A, T> for Platform
Available on non-crate feature
opencl only.Source§impl PlatformInstance for Platform
Available on non-crate feature opencl only.
impl PlatformInstance for Platform
Available on non-crate feature
opencl only.Source§impl<A: Access<T>, T: CType> ReduceAll<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: CType> ReduceAll<A, T> for Platform
Available on non-crate feature
opencl only.fn all(self, access: A) -> Result<bool, Error>
fn any(self, access: A) -> Result<bool, Error>
fn max(self, access: A) -> Result<T, Error>
fn min(self, access: A) -> Result<T, Error>
fn product(self, access: A) -> Result<T, Error>
fn sum(self, access: A) -> Result<T, Error>
Source§impl<A: Access<T>, T: CType> ReduceAxes<A, T> for Platform
Available on non-crate feature opencl only.
impl<A: Access<T>, T: CType> ReduceAxes<A, T> for Platform
Available on non-crate feature
opencl only.type Op = Reduce<A, T>
fn max( self, access: A, stride: usize, ) -> Result<AccessOp<Self::Op, Self>, Error>
fn min( self, access: A, stride: usize, ) -> Result<AccessOp<Self::Op, Self>, Error>
fn product( self, access: A, stride: usize, ) -> Result<AccessOp<Self::Op, Self>, Error>
fn sum( self, access: A, stride: usize, ) -> Result<AccessOp<Self::Op, Self>, Error>
Source§impl<A: Access<T>, T: CType> Transform<A, T> for Platform
impl<A: Access<T>, T: CType> Transform<A, T> for Platform
type Broadcast = View<A, T>
type Slice = Slice<A, T>
type Transpose = View<A, T>
fn broadcast( self, access: A, shape: Shape, broadcast: Shape, ) -> Result<AccessOp<Self::Broadcast, Self>, Error>
fn slice( self, access: A, shape: &[usize], range: Range, ) -> Result<AccessOp<Self::Slice, Self>, Error>
fn transpose( self, access: A, shape: Shape, permutation: Axes, ) -> Result<AccessOp<Self::Transpose, Self>, Error>
impl Copy for Platform
impl Eq for Platform
impl StructuralPartialEq for Platform
Auto Trait Implementations§
impl Freeze for Platform
impl RefUnwindSafe for Platform
impl Send for Platform
impl Sync for Platform
impl Unpin for Platform
impl UnwindSafe for Platform
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more