There are (generic) situations where we use into_dimensionality::<D>() as a no-op, we just don't have a proof in the type system that the two dimensions are equal. The method should have a TypeId (or equivalent based on a new Dimension method) based fast-path that basically transmutes input dimensions to output dimensions, to avoid copying and make the (generated) code simpler.
There are (generic) situations where we use
into_dimensionality::<D>()as a no-op, we just don't have a proof in the type system that the two dimensions are equal. The method should have a TypeId (or equivalent based on a new Dimension method) based fast-path that basically transmutes input dimensions to output dimensions, to avoid copying and make the (generated) code simpler.