ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/jsr166x/ConcurrentNavigableMap.java
Revision: 1.7
Committed: Wed Jan 16 00:51:11 2013 UTC (11 years, 3 months ago) by jsr166
Branch: MAIN
CVS Tags: HEAD
Changes since 1.6: +22 -22 lines
Log Message:
<tt> -> {@code

File Contents

# User Rev Content
1 dl 1.1 /*
2     * Written by Doug Lea with assistance from members of JCP JSR-166
3     * Expert Group and released to the public domain, as explained at
4 jsr166 1.3 * http://creativecommons.org/publicdomain/zero/1.0/
5 dl 1.1 */
6    
7     package jsr166x;
8    
9     import java.util.*;
10     import java.util.concurrent.*;
11    
12     /**
13     * A {@link ConcurrentMap} supporting {@link NavigableMap} operations.
14     *
15     * @author Doug Lea
16     * @param <K> the type of keys maintained by this map
17 jsr166 1.2 * @param <V> the type of mapped values
18 dl 1.1 */
19     public interface ConcurrentNavigableMap<K,V> extends ConcurrentMap<K,V>, NavigableMap<K,V> {
20     /**
21     * Returns a view of the portion of this map whose keys range from
22 jsr166 1.7 * {@code fromKey}, inclusive, to {@code toKey}, exclusive. (If
23     * {@code fromKey} and {@code toKey} are equal, the returned sorted map
24 dl 1.1 * is empty.) The returned sorted map is backed by this map, so changes
25     * in the returned sorted map are reflected in this map, and vice-versa.
26 jsr166 1.4 *
27 jsr166 1.6 * @param fromKey low endpoint (inclusive) of the subMap
28     * @param toKey high endpoint (exclusive) of the subMap
29 dl 1.1 *
30     * @return a view of the portion of this map whose keys range from
31 jsr166 1.7 * {@code fromKey}, inclusive, to {@code toKey}, exclusive
32 dl 1.1 *
33 jsr166 1.7 * @throws ClassCastException if {@code fromKey} and
34     * {@code toKey} cannot be compared to one another using this
35 dl 1.1 * map's comparator (or, if the map has no comparator, using
36 jsr166 1.6 * natural ordering)
37 jsr166 1.7 * @throws IllegalArgumentException if {@code fromKey} is greater
38     * than {@code toKey}
39     * @throws NullPointerException if {@code fromKey} or
40     * {@code toKey} is {@code null} and this map does not support
41     * {@code null} keys
42 dl 1.1 */
43     public ConcurrentNavigableMap<K,V> subMap(K fromKey, K toKey);
44    
45     /**
46     * Returns a view of the portion of this map whose keys are strictly less
47 jsr166 1.7 * than {@code toKey}. The returned sorted map is backed by this map, so
48 dl 1.1 * changes in the returned sorted map are reflected in this map, and
49 jsr166 1.2 * vice-versa.
50 jsr166 1.6 * @param toKey high endpoint (exclusive) of the headMap
51 dl 1.1 * @return a view of the portion of this map whose keys are strictly
52 jsr166 1.7 * less than {@code toKey}
53 dl 1.1 *
54 jsr166 1.7 * @throws ClassCastException if {@code toKey} is not compatible
55 dl 1.1 * with this map's comparator (or, if the map has no comparator,
56 jsr166 1.7 * if {@code toKey} does not implement {@code Comparable})
57     * @throws NullPointerException if {@code toKey} is {@code null}
58     * and this map does not support {@code null} keys
59 dl 1.1 */
60     public ConcurrentNavigableMap<K,V> headMap(K toKey);
61    
62     /**
63     * Returns a view of the portion of this map whose keys are
64 jsr166 1.7 * greater than or equal to {@code fromKey}. The returned sorted
65 dl 1.1 * map is backed by this map, so changes in the returned sorted
66     * map are reflected in this map, and vice-versa.
67 jsr166 1.6 * @param fromKey low endpoint (inclusive) of the tailMap
68 dl 1.1 * @return a view of the portion of this map whose keys are greater
69 jsr166 1.7 * than or equal to {@code fromKey}
70     * @throws ClassCastException if {@code fromKey} is not compatible
71 dl 1.1 * with this map's comparator (or, if the map has no comparator,
72 jsr166 1.7 * if {@code fromKey} does not implement {@code Comparable})
73     * @throws NullPointerException if {@code fromKey} is {@code null}
74     * and this map does not support {@code null} keys
75 dl 1.1 */
76 jsr166 1.5 public ConcurrentNavigableMap<K,V> tailMap(K fromKey);
77 dl 1.1 }