class SortedRangeSet implements ValueSet {

    @Transient
    @Override
    public Object getSingleValue()
    {
        if (!isSingleValue()) {
            throw new IllegalStateException("SortedRangeSet does not have just a single value");
        }

        if (nullAllowed && lowIndexedRanges.isEmpty()) {
            return null;
        }

        return lowIndexedRanges.values().iterator().next().getSingleValue();
    }

    private  SortedRangeSet(ArrowType type, NavigableMap<ValueMarker, Range> lowIndexedRanges, boolean nullAllowed);

}