Class IdentityBiMap<K,​V>

  • Type Parameters:
    K - key type
    V - value type
    All Implemented Interfaces:
    com.google.common.collect.BiMap<com.google.common.base.Equivalence.Wrapper<K>,​com.google.common.base.Equivalence.Wrapper<V>>, Map<com.google.common.base.Equivalence.Wrapper<K>,​com.google.common.base.Equivalence.Wrapper<V>>

    public class IdentityBiMap<K,​V>
    extends Object
    implements com.google.common.collect.BiMap<com.google.common.base.Equivalence.Wrapper<K>,​com.google.common.base.Equivalence.Wrapper<V>>
    BiMap based on identities of types K and V.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void clear()  
      com.google.common.base.Equivalence.Wrapper<V> compute​(com.google.common.base.Equivalence.Wrapper<K> key, BiFunction<? super com.google.common.base.Equivalence.Wrapper<K>,​? super com.google.common.base.Equivalence.Wrapper<V>,​? extends com.google.common.base.Equivalence.Wrapper<V>> remappingFunction)  
      com.google.common.base.Equivalence.Wrapper<V> computeIfAbsent​(com.google.common.base.Equivalence.Wrapper<K> key, Function<? super com.google.common.base.Equivalence.Wrapper<K>,​? extends com.google.common.base.Equivalence.Wrapper<V>> mappingFunction)  
      com.google.common.base.Equivalence.Wrapper<V> computeIfPresent​(com.google.common.base.Equivalence.Wrapper<K> key, BiFunction<? super com.google.common.base.Equivalence.Wrapper<K>,​? super com.google.common.base.Equivalence.Wrapper<V>,​? extends com.google.common.base.Equivalence.Wrapper<V>> remappingFunction)  
      boolean containsKey​(Object key)  
      boolean containsKeyUnwrapped​(Object key)  
      boolean containsValue​(Object value)  
      static <K,​V>
      IdentityBiMap<K,​V>
      create()  
      static <K,​V>
      IdentityBiMap<K,​V>
      create​(com.google.common.collect.BiMap<com.google.common.base.Equivalence.Wrapper<K>,​com.google.common.base.Equivalence.Wrapper<V>> delegate)  
      Set<Map.Entry<com.google.common.base.Equivalence.Wrapper<K>,​com.google.common.base.Equivalence.Wrapper<V>>> entrySet()  
      boolean equals​(Object o)  
      com.google.common.base.Equivalence.Wrapper<V> forcePut​(com.google.common.base.Equivalence.Wrapper<K> key, com.google.common.base.Equivalence.Wrapper<V> value)  
      V forcePutUnwrapped​(K key, V value)  
      void forEach​(BiConsumer<? super com.google.common.base.Equivalence.Wrapper<K>,​? super com.google.common.base.Equivalence.Wrapper<V>> action)  
      void forEachUnwrapped​(BiConsumer<? super K,​? super V> action)  
      com.google.common.base.Equivalence.Wrapper<V> get​(Object key)  
      protected com.google.common.collect.BiMap<com.google.common.base.Equivalence.Wrapper<K>,​com.google.common.base.Equivalence.Wrapper<V>> getDelegate()  
      com.google.common.base.Equivalence.Wrapper<V> getOrDefault​(Object key, com.google.common.base.Equivalence.Wrapper<V> defaultValue)  
      V getOrDefaultUnwrapped​(Object key, V defaultValue)  
      V getUnwrapped​(Object key)  
      int hashCode()  
      IdentityBiMap<V,​K> inverse()  
      boolean isEmpty()  
      Set<com.google.common.base.Equivalence.Wrapper<K>> keySet()  
      com.google.common.base.Equivalence.Wrapper<V> merge​(com.google.common.base.Equivalence.Wrapper<K> key, com.google.common.base.Equivalence.Wrapper<V> value, BiFunction<? super com.google.common.base.Equivalence.Wrapper<V>,​? super com.google.common.base.Equivalence.Wrapper<V>,​? extends com.google.common.base.Equivalence.Wrapper<V>> remappingFunction)  
      com.google.common.base.Equivalence.Wrapper<V> put​(com.google.common.base.Equivalence.Wrapper<K> key, com.google.common.base.Equivalence.Wrapper<V> value)  
      void putAll​(Map<? extends com.google.common.base.Equivalence.Wrapper<K>,​? extends com.google.common.base.Equivalence.Wrapper<V>> map)  
      com.google.common.base.Equivalence.Wrapper<V> putIfAbsent​(com.google.common.base.Equivalence.Wrapper<K> key, com.google.common.base.Equivalence.Wrapper<V> value)  
      com.google.common.base.Equivalence.Wrapper<V> putIfAbsentUnwrapped​(K key, V value)  
      V putUnwrapped​(K key, V value)  
      com.google.common.base.Equivalence.Wrapper<V> remove​(Object key)  
      com.google.common.base.Equivalence.Wrapper<V> replace​(com.google.common.base.Equivalence.Wrapper<K> key, com.google.common.base.Equivalence.Wrapper<V> value)  
      boolean replace​(com.google.common.base.Equivalence.Wrapper<K> key, com.google.common.base.Equivalence.Wrapper<V> oldValue, com.google.common.base.Equivalence.Wrapper<V> newValue)  
      void replaceAll​(BiFunction<? super com.google.common.base.Equivalence.Wrapper<K>,​? super com.google.common.base.Equivalence.Wrapper<V>,​? extends com.google.common.base.Equivalence.Wrapper<V>> function)  
      int size()  
      IdentityBiMap<K,​V> toImmutable()  
      static <T,​K,​V>
      Collector<T,​?,​IdentityBiMap<K,​V>>
      toImmutableIdentityBiMap​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends V> valueMapper, BinaryOperator<V> mergeFunction)  
      static <T> T unwrap​(com.google.common.base.Equivalence.Wrapper<T> wrapper)  
      Set<com.google.common.base.Equivalence.Wrapper<V>> values()  
      static <T> com.google.common.base.Equivalence.Wrapper<T> wrap​(T reference)  
      • Methods inherited from interface java.util.Map

        remove
    • Method Detail

      • getDelegate

        protected com.google.common.collect.BiMap<com.google.common.base.Equivalence.Wrapper<K>,​com.google.common.base.Equivalence.Wrapper<V>> getDelegate()
      • put

        @CanIgnoreReturnValue
        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> put​(@Nullable
                                                                 com.google.common.base.Equivalence.Wrapper<K> key,
                                                                 @Nullable
                                                                 com.google.common.base.Equivalence.Wrapper<V> value)
        Specified by:
        put in interface com.google.common.collect.BiMap<K,​V>
        Specified by:
        put in interface Map<K,​V>
      • forcePut

        @CanIgnoreReturnValue
        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> forcePut​(@Nullable
                                                                      com.google.common.base.Equivalence.Wrapper<K> key,
                                                                      @Nullable
                                                                      com.google.common.base.Equivalence.Wrapper<V> value)
        Specified by:
        forcePut in interface com.google.common.collect.BiMap<K,​V>
      • putAll

        public void putAll​(@Nonnull
                           Map<? extends com.google.common.base.Equivalence.Wrapper<K>,​? extends com.google.common.base.Equivalence.Wrapper<V>> map)
        Specified by:
        putAll in interface com.google.common.collect.BiMap<K,​V>
        Specified by:
        putAll in interface Map<K,​V>
      • values

        @Nonnull
        public Set<com.google.common.base.Equivalence.Wrapper<V>> values()
        Specified by:
        values in interface com.google.common.collect.BiMap<K,​V>
        Specified by:
        values in interface Map<K,​V>
      • inverse

        @Nonnull
        public IdentityBiMap<V,​K> inverse()
        Specified by:
        inverse in interface com.google.common.collect.BiMap<K,​V>
      • size

        public int size()
        Specified by:
        size in interface Map<K,​V>
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface Map<K,​V>
      • containsKeyUnwrapped

        public boolean containsKeyUnwrapped​(@Nullable
                                            Object key)
      • remove

        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> remove​(Object key)
        Specified by:
        remove in interface Map<K,​V>
      • clear

        public void clear()
        Specified by:
        clear in interface Map<K,​V>
      • keySet

        @Nonnull
        public Set<com.google.common.base.Equivalence.Wrapper<K>> keySet()
        Specified by:
        keySet in interface Map<K,​V>
      • entrySet

        @Nonnull
        public Set<Map.Entry<com.google.common.base.Equivalence.Wrapper<K>,​com.google.common.base.Equivalence.Wrapper<V>>> entrySet()
        Specified by:
        entrySet in interface Map<K,​V>
      • forEach

        public void forEach​(@Nonnull
                            BiConsumer<? super com.google.common.base.Equivalence.Wrapper<K>,​? super com.google.common.base.Equivalence.Wrapper<V>> action)
        Specified by:
        forEach in interface Map<K,​V>
      • forEachUnwrapped

        public void forEachUnwrapped​(@Nonnull
                                     BiConsumer<? super K,​? super V> action)
      • replaceAll

        public void replaceAll​(@Nonnull
                               BiFunction<? super com.google.common.base.Equivalence.Wrapper<K>,​? super com.google.common.base.Equivalence.Wrapper<V>,​? extends com.google.common.base.Equivalence.Wrapper<V>> function)
        Specified by:
        replaceAll in interface Map<K,​V>
      • putIfAbsent

        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> putIfAbsent​(@Nullable
                                                                         com.google.common.base.Equivalence.Wrapper<K> key,
                                                                         com.google.common.base.Equivalence.Wrapper<V> value)
        Specified by:
        putIfAbsent in interface Map<K,​V>
      • putIfAbsentUnwrapped

        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> putIfAbsentUnwrapped​(@Nullable
                                                                                  K key,
                                                                                  V value)
      • replace

        public boolean replace​(@Nullable
                               com.google.common.base.Equivalence.Wrapper<K> key,
                               @Nullable
                               com.google.common.base.Equivalence.Wrapper<V> oldValue,
                               @Nullable
                               com.google.common.base.Equivalence.Wrapper<V> newValue)
        Specified by:
        replace in interface Map<K,​V>
      • replace

        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> replace​(@Nullable
                                                                     com.google.common.base.Equivalence.Wrapper<K> key,
                                                                     com.google.common.base.Equivalence.Wrapper<V> value)
        Specified by:
        replace in interface Map<K,​V>
      • computeIfAbsent

        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> computeIfAbsent​(@Nullable
                                                                             com.google.common.base.Equivalence.Wrapper<K> key,
                                                                             @Nonnull
                                                                             Function<? super com.google.common.base.Equivalence.Wrapper<K>,​? extends com.google.common.base.Equivalence.Wrapper<V>> mappingFunction)
        Specified by:
        computeIfAbsent in interface Map<K,​V>
      • computeIfPresent

        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> computeIfPresent​(@Nullable
                                                                              com.google.common.base.Equivalence.Wrapper<K> key,
                                                                              @Nonnull
                                                                              BiFunction<? super com.google.common.base.Equivalence.Wrapper<K>,​? super com.google.common.base.Equivalence.Wrapper<V>,​? extends com.google.common.base.Equivalence.Wrapper<V>> remappingFunction)
        Specified by:
        computeIfPresent in interface Map<K,​V>
      • compute

        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> compute​(@Nullable
                                                                     com.google.common.base.Equivalence.Wrapper<K> key,
                                                                     @Nonnull
                                                                     BiFunction<? super com.google.common.base.Equivalence.Wrapper<K>,​? super com.google.common.base.Equivalence.Wrapper<V>,​? extends com.google.common.base.Equivalence.Wrapper<V>> remappingFunction)
        Specified by:
        compute in interface Map<K,​V>
      • merge

        @Nullable
        public com.google.common.base.Equivalence.Wrapper<V> merge​(@Nullable
                                                                   com.google.common.base.Equivalence.Wrapper<K> key,
                                                                   @Nonnull
                                                                   com.google.common.base.Equivalence.Wrapper<V> value,
                                                                   @Nonnull
                                                                   BiFunction<? super com.google.common.base.Equivalence.Wrapper<V>,​? super com.google.common.base.Equivalence.Wrapper<V>,​? extends com.google.common.base.Equivalence.Wrapper<V>> remappingFunction)
        Specified by:
        merge in interface Map<K,​V>
      • create

        @Nonnull
        public static <K,​V> IdentityBiMap<K,​V> create​(com.google.common.collect.BiMap<com.google.common.base.Equivalence.Wrapper<K>,​com.google.common.base.Equivalence.Wrapper<V>> delegate)
      • wrap

        @Nonnull
        public static <T> com.google.common.base.Equivalence.Wrapper<T> wrap​(@Nullable
                                                                             T reference)
      • unwrap

        @Nullable
        public static <T> T unwrap​(@Nullable
                                   com.google.common.base.Equivalence.Wrapper<T> wrapper)