# Shape/index manipulation

- xshape
  - `promote_shape_t`
  - `promote_strides_t`
  - `index_from_shape_t`
  - `filter_fixed_shape_t`
  - `same_shape()`
  - `has_shape()`
  - `select_layout`
- xstrides
  - `stride_type`
    - `stride_type::internal`
    - `stride_type::normal`
    - `stride_type::bytes`
  - `data_offset()`
  - `compute_strides()`
  - `normalize_periodic()`
  - `strides()`
  - `strides()`