/// Backend type aliases.
pub mod tensor {
    use crate::backend::BackendTypes;
    // We provide some type aliases to improve the readability of using associated types without
    // having to use the disambiguation syntax.

    pub use burn_std::ops::IndexingUpdateOp;

    /// Device type used by the backend.
    pub type Device<B> = <B as BackendTypes>::Device;

    /// Float tensor primitive type used by the backend.
    pub type FloatTensor<B> = <B as BackendTypes>::FloatTensorPrimitive;
    /// Integer tensor primitive type used by the backend.
    pub type IntTensor<B> = <B as BackendTypes>::IntTensorPrimitive;
    /// Boolean tensor primitive type used by the backend.
    pub type BoolTensor<B> = <B as BackendTypes>::BoolTensorPrimitive;
    /// Quantized tensor primitive type used by the backend.
    pub type QuantizedTensor<B> = <B as BackendTypes>::QuantizedTensorPrimitive;
}
