pub trait Cast<const D: usize, K: Basic> {
type OutputKind: Basic;
// Required method
fn cast(tensor: Tensor<D, K>, dtype: Self) -> Tensor<D, Self::OutputKind>;
}Expand description
Required Associated Types§
Sourcetype OutputKind: Basic
type OutputKind: Basic
The output tensor kind after casting.
Required Methods§
Sourcefn cast(tensor: Tensor<D, K>, dtype: Self) -> Tensor<D, Self::OutputKind>
fn cast(tensor: Tensor<D, K>, dtype: Self) -> Tensor<D, Self::OutputKind>
Cast a tensor primitive to the target dtype.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementors§
Source§impl<const D: usize> Cast<D, Bool> for FloatDType
impl<const D: usize> Cast<D, Bool> for FloatDType
type OutputKind = Float
Source§impl<const D: usize> Cast<D, Float> for DType
Backward-compatible impl: only float DType variants are accepted.
impl<const D: usize> Cast<D, Float> for DType
Backward-compatible impl: only float DType variants are accepted.
§Panics
Panics if dtype is not a float variant (e.g., DType::I32).
Use IntDType directly for cross-kind casting to int.
type OutputKind = Float
Source§impl<const D: usize> Cast<D, Float> for FloatDType
impl<const D: usize> Cast<D, Float> for FloatDType
type OutputKind = Float
Source§impl<const D: usize> Cast<D, Int> for DType
Backward-compatible impl: only int DType variants are accepted.
impl<const D: usize> Cast<D, Int> for DType
Backward-compatible impl: only int DType variants are accepted.
§Panics
Panics if dtype is not an int variant (e.g., DType::F32).
Use FloatDType directly for cross-kind casting to float.