Javolution 6.0.0 java
FastSortedSet.java
Go to the documentation of this file.
1 /*
2  * Javolution - Java(TM) Solution for Real-Time and Embedded Systems
3  * Copyright (C) 2012 - Javolution (http://javolution.org/)
4  * All rights reserved.
5  *
6  * Permission to use, copy, modify, and distribute this software is
7  * freely granted, provided that this notice is preserved.
8  */
9 package javolution.util;
10 
11 import static javolution.lang.Realtime.Limit.LOG_N;
12 
13 import java.util.SortedSet;
14 
15 import javolution.lang.Realtime;
23 
30 public class FastSortedSet<E> extends FastSet<E> implements SortedSet<E> {
31 
32  private static final long serialVersionUID = 0x600L; // Version.
33 
37  public FastSortedSet() {
38  this(Equalities.STANDARD);
39  }
40 
46  .keySet());
47  }
48 
53  super(service);
54  }
55 
57  // Views.
58  //
59 
60  @Override
63  }
64 
65  @Override
68  }
69 
70  @Override
73  }
74 
76  // Change in time limit behavior.
77  //
78 
79  @Override
80  @Realtime(limit = LOG_N)
81  public boolean add(E e) {
82  return super.add(e);
83  }
84 
85  @Override
86  @Realtime(limit = LOG_N)
87  public boolean contains(Object obj) {
88  return super.contains(obj);
89  }
90 
91  @Override
92  @Realtime(limit = LOG_N)
93  public boolean remove(Object obj) {
94  return super.remove(obj);
95  }
96 
98  // SortedSet Interface.
99  //
100 
102  @Override
103  @Realtime(limit = LOG_N)
104  public FastSortedSet<E> subSet(E fromElement, E toElement) {
105  return new FastSortedSet<E>(service().subSet(fromElement, toElement));
106  }
107 
109  @Override
110  @Realtime(limit = LOG_N)
111  public FastSortedSet<E> headSet(E toElement) {
112  return subSet(first(), toElement);
113  }
114 
116  @Override
117  @Realtime(limit = LOG_N)
118  public FastSortedSet<E> tailSet(E fromElement) {
119  return subSet(fromElement, last());
120  }
121 
123  @Override
124  public E first() {
125  return service().first();
126  }
127 
129  @Override
130  public E last() {
131  return service().last();
132  }
133 
135  // Misc.
136  //
137 
138  @Override
139  public FastSortedSet<E> addAll(E... elements) {
140  return (FastSortedSet<E>) super.addAll(elements);
141  }
142 
143  @Override
145  return (FastSortedSet<E>) super.addAll(that);
146  }
147 
148  @Override
150  return (SortedSetService<E>) super.service();
151  }
152 
153 }
javolution.util.FastCollection.comparator
Equality<? super E > comparator()
Definition: FastCollection.java:574
javolution.util.function.Equalities.IDENTITY
static final Equality< Object > IDENTITY
Definition: Equalities.java:40
javolution.util.function.Equalities.STANDARD
static final Equality< Object > STANDARD
Definition: Equalities.java:31
javolution.util.internal.map.sorted
Definition: AtomicSortedMapImpl.java:9
javolution.util.FastSortedSet.last
E last()
Definition: FastSortedSet.java:130
javolution.util.FastSortedSet.subSet
FastSortedSet< E > subSet(E fromElement, E toElement)
Definition: FastSortedSet.java:104
javolution
javolution.util.internal
javolution.util.service
Definition: BitSetService.java:9
javolution.lang.Realtime.Limit
Definition: Realtime.java:81
javolution.util.FastSortedSet.service
SortedSetService< E > service()
Definition: FastSortedSet.java:149
javolution.util.FastSortedSet.shared
FastSortedSet< E > shared()
Definition: FastSortedSet.java:66
javolution.util.service.SortedSetService
Definition: SortedSetService.java:19
javolution.util.FastSortedSet.addAll
FastSortedSet< E > addAll(E... elements)
Definition: FastSortedSet.java:139
javolution.lang.Realtime.Limit.LOG_N
LOG_N
Definition: Realtime.java:92
javolution.util.FastSortedSet.atomic
FastSortedSet< E > atomic()
Definition: FastSortedSet.java:61
javolution.util.internal.set
Definition: AtomicSetImpl.java:9
javolution.util.FastSortedSet.addAll
FastSortedSet< E > addAll(FastCollection<? extends E > that)
Definition: FastSortedSet.java:144
javolution.util.FastSortedSet.first
E first()
Definition: FastSortedSet.java:124
javolution.util.internal.map.sorted.FastSortedMapImpl
Definition: FastSortedMapImpl.java:19
javolution.util.FastSortedSet.unmodifiable
FastSortedSet< E > unmodifiable()
Definition: FastSortedSet.java:71
javolution.util.internal.map.sorted.SortedMapView.keySet
SortedSetService< K > keySet()
Definition: SortedMapView.java:130
javolution.util.internal.set.sorted.UnmodifiableSortedSetImpl
Definition: UnmodifiableSortedSetImpl.java:19
javolution.util.function.Equality
Definition: Equality.java:39
javolution.util.FastSortedSet.remove
boolean remove(Object obj)
Definition: FastSortedSet.java:93
javolution.lang
Definition: Configurable.java:9
javolution.util.function.Equalities
Definition: Equalities.java:20
javolution.util.FastSortedSet.add
boolean add(E e)
Definition: FastSortedSet.java:81
javolution.util.FastSortedSet.FastSortedSet
FastSortedSet(Equality<? super E > comparator)
Definition: FastSortedSet.java:44
javolution.util.internal.set.sorted.AtomicSortedSetImpl
Definition: AtomicSortedSetImpl.java:18
javolution.util.FastSortedSet.tailSet
FastSortedSet< E > tailSet(E fromElement)
Definition: FastSortedSet.java:118
javolution.util.function
Definition: Consumer.java:9
javolution.lang.Realtime
Definition: Realtime.java:59
javolution.util.FastCollection
Definition: FastCollection.java:166
javolution.util.internal.set.sorted
Definition: AtomicSortedSetImpl.java:9
javolution.util.FastSortedSet.FastSortedSet
FastSortedSet()
Definition: FastSortedSet.java:37
javolution.util.FastSortedSet
Definition: FastSortedSet.java:30
javolution.util.internal.set.sorted.SharedSortedSetImpl
Definition: SharedSortedSetImpl.java:19
javolution.util.FastSortedSet.contains
boolean contains(Object obj)
Definition: FastSortedSet.java:87
javolution.util.FastSortedSet.serialVersionUID
static final long serialVersionUID
Definition: FastSortedSet.java:32
javolution.util.FastSortedSet.headSet
FastSortedSet< E > headSet(E toElement)
Definition: FastSortedSet.java:111
javolution.util.FastSortedSet.FastSortedSet
FastSortedSet(SortedSetService< E > service)
Definition: FastSortedSet.java:52
javolution.util.FastSet
Definition: FastSet.java:37
javolution.util
Definition: FastBitSet.java:9
javolution.util.internal.map
Definition: AtomicMapImpl.java:9