diff options
Diffstat (limited to 'app/src/main/java/com/wireguard/util/SortedKeyedList.java')
-rw-r--r-- | app/src/main/java/com/wireguard/util/SortedKeyedList.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/app/src/main/java/com/wireguard/util/SortedKeyedList.java b/app/src/main/java/com/wireguard/util/SortedKeyedList.java new file mode 100644 index 00000000..85aeecff --- /dev/null +++ b/app/src/main/java/com/wireguard/util/SortedKeyedList.java @@ -0,0 +1,27 @@ +/* + * Copyright © 2018 Samuel Holland <samuel@sholland.org> + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +package com.wireguard.util; + +import java.util.Collection; +import java.util.Comparator; +import java.util.Set; + +/** + * A keyed list where all elements are sorted by the comparator returned by {@code comparator()} + * applied to their keys. + */ + +public interface SortedKeyedList<K, E extends Keyed<? extends K>> extends KeyedList<K, E> { + Comparator<? super K> comparator(); + + K firstKey(); + + Set<K> keySet(); + + K lastKey(); + + Collection<E> values(); +} |