Lines Matching full:inverse
50 private transient AbstractBiMap<V, K> inverse;
57 /** Private constructor for inverse bimap. */
60 inverse = forward;
73 checkState(inverse == null);
78 inverse = new Inverse<V, K>(backward, this);
81 void setInverse(AbstractBiMap<V, K> inverse) {
82 this.inverse = inverse;
88 return inverse.containsKey(value);
107 inverse().remove(value);
121 inverse.delegate.put(newValue, key);
135 inverse.delegate.remove(oldValue);
148 inverse.delegate.clear();
153 public BiMap<V, K> inverse() {
154 return inverse;
215 * We can almost reuse the inverse's keySet, except we have to fix the
223 final Set<V> valuesDelegate = inverse.keySet();
285 inverse.delegate.remove(entry.getValue());
308 // Preconditions keep the map and inverse consistent.
356 /** The inverse of any other {@code AbstractBiMap} subclass. */
357 private static class Inverse<K, V> extends AbstractBiMap<K, V> {
358 private Inverse(Map<K, V> backward, AbstractBiMap<V, K> forward) {
363 * Serialization stores the forward bimap, the inverse of this inverse.
364 * Deserialization calls inverse() on the forward bimap and returns that
365 * inverse.
367 * If a bimap and its inverse are serialized together, the deserialized
368 * instances have inverse() methods that return the other.
376 stream.writeObject(inverse());
387 return inverse().inverse();