pub fn diagonal<R, T, B, D>(
tensor: &TensorAny<R, T, B, D>,
diagonal_args: impl Into<DiagonalArgs>,
) -> TensorView<'_, T, B, D::SmallerOne>where
D: DimAPI + DimSmallerOneAPI,
D::SmallerOne: DimAPI,
R: DataAPI<Data = B::Raw>,
B: DeviceAPI<T>,