code: public static <K, V> TypeChecker<Map<? extends K, ? extends V>> tMap(TypeChecker<? extends K> keyChecker, TypeChecker<? extends V> valueChecker) {
          return new MapTypeChecker<>(Map.class, keyChecker, valueChecker);
      }
docs: Creates a recursing type checker for a {@link java.util.Map}.
  
  @param keyChecker The typechecker to check the keys with
  @param valueChecker The typechecker to check the values with
  @return a typechecker for a Map containing keys and values passing the specified type checkers