code: def make_type_error(cls, msg, *args, **kwargs):
      
      return cls.type_check_error_type(cls.__name__, msg, *args, **kwargs)
docs: A helper method to generate an exception type for type checking errors.
  
      This method uses `cls.type_check_error_type` to ensure that type checking errors can be caught
      with a reliable exception type. The type returned by `cls.type_check_error_type` should ensure
      that the exception messages are prefixed with enough context to be useful and *not* confusing.