docs: def make_dict(name, keys, **kwargs):
      """
      Creates a dictionary-like mapping class that uses perfect hashing.
      ``name`` is the proper class name of the returned class. See
      ``hash_parameters()`` for documentation on all arguments after
      ``name``.
  
      >>> MyDict = make_dict('MyDict', '+-<>[],.', to_int=ord)
      >>> d = MyDict([('+', 1), ('-', 2)])
      >>> d[','] = 3
      >>> d
      MyDict([('+', 1), (',', 3), ('-', 2)])
      >>> del d['+']
      >>> del d['.']
      Traceback (most recent call last):
      ...
      KeyError: '.'
      >>> len(d)
      2
      """
      hash_func = make_hash(keys, **kwargs)
      slots = hash_func.slots
  
      # Create a docstring that at least describes where the class came from...
      doc = """
          Dictionary-like object that uses perfect hashing. This class was
          generated by `%s.%s(%r, ...)`.
          """ % (__name__, make_dict.__name__, name)
  
      return create_dict_subclass(name, hash_func, slots, doc)