docs: def fastqIterator(fn, verbose=False, allowNameMissmatch=False):
    """
      A generator function which yields FastqSequence objects read from a file or
      stream. This is a general function which wraps fastqIteratorSimple. In
      future releases, we may allow dynamic switching of which base iterator is
      used.
  
      :param fn:                 A file-like stream or a string; if this is a
                                 string, it's treated as a filename specifying
                                 the location of an input fastq file, else it's
                                 treated as a file-like object, which must have a
                                 readline() method.
      :param useMustableString:  if True, construct sequences from lists of
                                 chars, rather than python string objects, to
                                 allow more efficient editing. Use with caution.
      :param verbose:            if True, print messages on progress to stderr.
      :param debug:              if True, print debugging messages to stderr.
      :param sanger:             if True, assume quality scores are in sanger
                                 format. Otherwise, assume they're in Illumina
                                 format.
      :param allowNameMissmatch: don't throw error if name in sequence data and
                                 quality data parts of a read don't match. Newer
                                 version of CASVA seem to output data like this,
                                 probably to save space.
    """
    it = fastqIteratorSimple(fn, verbose=verbose,
                             allowNameMissmatch=allowNameMissmatch)
    for s in it:
      yield s