MapConstraint
Date: 2016-05-24

com.google.common.collect

## Interface MapConstraint<K,V>

- Deprecated.
  Use `Preconditions` for basic checks. In place of constrained maps, we encourage you to check your preconditions explicitly instead of leaving that work to the map implementation. For the specific case of rejecting null, consider `ImmutableMap`. This class is scheduled for removal in Guava 20.0.

      @GwtCompatible
      @Beta
      @Deprecated
      public interface MapConstraint<K,V>

  A constraint on the keys and values that may be added to a `Map` or `Multimap`. For example, `MapConstraints.notNull()`, which prevents a map from including any null keys or values, could be implemented like this:

         public void checkKeyValue(Object key, Object value) {
           if (key == null || value == null) {
             throw new NullPointerException();
           }
         }

  In order to be effective, constraints should be deterministic; that is, they should not depend on state that can change (such as external state, random variables, and time) and should only depend on the value of the passed-in key and value. A non-deterministic constraint cannot reliably enforce that all the collection's elements meet the constraint, since the constraint is only enforced when elements are added.

  Since:
    3.0
  See Also:
    `MapConstraints`, `Constraint`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `checkKeyValue(K key, V value)` Deprecated. Throws a suitable `RuntimeException` if the specified key or value is illegal.
    `java.lang.String` | `toString()` Deprecated. Returns a brief human readable description of this constraint, such as "Not null".

- - ### Method Detail

    - #### checkKeyValue

          void checkKeyValue(@Nullable
                           K key,
                           @Nullable
                           V value)

      Deprecated.
      Throws a suitable `RuntimeException` if the specified key or value is illegal. Typically this is either a `NullPointerException`, an `IllegalArgumentException`, or a `ClassCastException`, though an application-specific exception class may be used if appropriate.

    - #### toString

          java.lang.String toString()

      Deprecated.
      Returns a brief human readable description of this constraint, such as "Not null".
      Overrides:
        `toString` in class `java.lang.Object`