public static IndexIterationPointer create(
            @Nullable Comparable<?> from,
            boolean fromInclusive,
            @Nullable Comparable<?> to,
            boolean toInclusive,
            boolean descending,
            @Nullable Data lastEntryKey
    ) {
        return new IndexIterationPointer(
                (byte) ((descending ? FLAG_DESCENDING : 0)
                        | (fromInclusive ? FLAG_FROM_INCLUSIVE : 0)
                        | (toInclusive ? FLAG_TO_INCLUSIVE : 0)
                        | (from == to ? FLAG_POINT_LOOKUP : 0)),
                from,
                to,
                lastEntryKey
        );
    }
@Test
    void createBadSingleton() {
        assertThatThrownBy(() -> create(5, true, 5, false, false, null))
                .isInstanceOf(AssertionError.class).hasMessageContaining("Point lookup limits must be all inclusive");
        assertThatThrownBy(() -> create(5, false, 5, true, false, null))
                .isInstanceOf(AssertionError.class).hasMessageContaining("Point lookup limits must be all inclusive");
        assertThatThrownBy(() -> create(5, false, 5, false, false, null))
                .isInstanceOf(AssertionError.class).hasMessageContaining("Point lookup limits must be all inclusive");
    }