@Test void testValues() { assertThat(THINGS.values()).containsExactly(Thing.ABC, Thing.DEF); }
public @NonNull Set<V> values() { return Collections.unmodifiableSet(this.valueToKey.keySet()); }
Index { public @NonNull Set<V> values() { return Collections.unmodifiableSet(this.valueToKey.keySet()); } }
Index { public @NonNull Set<V> values() { return Collections.unmodifiableSet(this.valueToKey.keySet()); } private  Index(final Map<K, V> keyToValue, final Map<V, K> valueToKey); }
Index { public @NonNull Set<V> values() { return Collections.unmodifiableSet(this.valueToKey.keySet()); } private  Index(final Map<K, V> keyToValue, final Map<V, K> valueToKey); static Index<K, V> create(final Class<V> type, final @NonNull Function<? super V, ? extends K> keyFunction); @SafeVarargs static Index<K, V> create(final Class<V> type, final @NonNull Function<? super V, ? extends K> keyFunction, final @NonNull V@NonNull... values); @SafeVarargs @SuppressWarnings("RedundantTypeArguments") // explicit type parameters needed to fix build on JDK 1.8 static Index<K, V> create(final @NonNull Function<? super V, ? extends K> keyFunction, final @NonNull V@NonNull... values); @SuppressWarnings("RedundantTypeArguments") // explicit type parameters needed to fix build on JDK 1.8 static Index<K, V> create(final @NonNull Function<? super V, ? extends K> keyFunction, final @NonNull List<V> constants); @NonNull Set<K> keys(); @Nullable K key(final @NonNull V value); @NonNull Set<V> values(); @Nullable V value(final @NonNull K key); }
Index { public @NonNull Set<V> values() { return Collections.unmodifiableSet(this.valueToKey.keySet()); } private  Index(final Map<K, V> keyToValue, final Map<V, K> valueToKey); static Index<K, V> create(final Class<V> type, final @NonNull Function<? super V, ? extends K> keyFunction); @SafeVarargs static Index<K, V> create(final Class<V> type, final @NonNull Function<? super V, ? extends K> keyFunction, final @NonNull V@NonNull... values); @SafeVarargs @SuppressWarnings("RedundantTypeArguments") // explicit type parameters needed to fix build on JDK 1.8 static Index<K, V> create(final @NonNull Function<? super V, ? extends K> keyFunction, final @NonNull V@NonNull... values); @SuppressWarnings("RedundantTypeArguments") // explicit type parameters needed to fix build on JDK 1.8 static Index<K, V> create(final @NonNull Function<? super V, ? extends K> keyFunction, final @NonNull List<V> constants); @NonNull Set<K> keys(); @Nullable K key(final @NonNull V value); @NonNull Set<V> values(); @Nullable V value(final @NonNull K key);  }