/// Divides an usize in three isizes whose sums results in the original usize, used to point on the
/// arrays of [Indexed::VARIANTS] and [Valued::VALUES].
pub(crate) const fn split_usize_to_isizes(usize: usize) -> (isize, isize, isize) {
    match usize.checked_sub(isize::MAX as usize) {
        Some(first_usize) => {
            if first_usize > isize::MAX as usize {
                (isize::MAX, isize::MAX, 1)
            } else {
                (isize::MAX, first_usize as isize, 0)
            }
        }
        None => (usize as isize, 0, 0),
    }
}