pub trait SliceShape<In: Shape>: AsRef<[AxisSliceSpec]> {
type Out: Shape;
// Required methods
fn in_ndim(&self) -> usize;
fn out_ndim(&self) -> usize;
// Provided method
fn slice(&self) -> &[AxisSliceSpec] { ... }
}
pub trait SliceShape<In: Shape>: AsRef<[AxisSliceSpec]> {
type Out: Shape;
// Required methods
fn in_ndim(&self) -> usize;
fn out_ndim(&self) -> usize;
// Provided method
fn slice(&self) -> &[AxisSliceSpec] { ... }
}