diff --git a/aQute.libg/src/aQute/lib/collections/SortedList.java b/aQute.libg/src/aQute/lib/collections/SortedList.java index ed33e7fbfc..0a2d2fa3bc 100644 --- a/aQute.libg/src/aQute/lib/collections/SortedList.java +++ b/aQute.libg/src/aQute/lib/collections/SortedList.java @@ -358,6 +358,10 @@ public T first() { return get(0); } + public T getFirst() { + return first(); + } + @Override public T last() { if (isEmpty()) @@ -365,6 +369,10 @@ public T last() { return get(size() - 1); } + public T getLast() { + return last(); + } + @Override @Deprecated public boolean addAll(int index, Collection c) { @@ -392,12 +400,32 @@ public void add(int index, T element) { throw new UnsupportedOperationException("Immutable"); } + @Deprecated + public void addFirst(T e) { + throw new UnsupportedOperationException("Immutable"); + } + + @Deprecated + public void addLast(T e) { + throw new UnsupportedOperationException("Immutable"); + } + @Override @Deprecated public T remove(int index) { throw new UnsupportedOperationException("Immutable"); } + @Deprecated + public T removeFirst() { + throw new UnsupportedOperationException("Immutable"); + } + + @Deprecated + public T removeLast() { + throw new UnsupportedOperationException("Immutable"); + } + @Override public ListIterator listIterator() { return new It(start); @@ -506,6 +534,13 @@ public static SortedSet empty() { return (SortedSet) EMPTY; } + public SortedList reversed() { + if (comparator == null) { + return new SortedList<>(list, start, end, (Comparator) Comparator.reverseOrder()); + } + return new SortedList<>(list, start, end, comparator.reversed()); + } + @Override public Spliterator spliterator() { return SortedSet.super.spliterator(); diff --git a/aQute.libg/src/aQute/lib/collections/package-info.java b/aQute.libg/src/aQute/lib/collections/package-info.java index 1ad0d60974..6e2b952275 100644 --- a/aQute.libg/src/aQute/lib/collections/package-info.java +++ b/aQute.libg/src/aQute/lib/collections/package-info.java @@ -1,4 +1,4 @@ -@Version("4.2.0") +@Version("4.3.0") package aQute.lib.collections; import org.osgi.annotation.versioning.Version;