class_docstr: Corpus serialized using the `sparse coordinate Matrix Market format
  <https://math.nist.gov/MatrixMarket/formats.html>`_.
  
  Wrap a term-document matrix on disk (in matrix-market format), and present it
  as an object which supports iteration over the matrix rows (~documents).
  
  Notes
  -----
  The file is read into memory one document at a time, not the whole matrix at once,
  unlike e.g. `scipy.io.mmread` and other implementations. This allows you to **process corpora which are larger
  than the available RAM**, in a streamed manner.
  
  Example
  --------
  .. sourcecode:: pycon
  
      >>> from gensim.corpora.mmcorpus import MmCorpus
      >>> from gensim.test.utils import datapath
      >>>
      >>> corpus = MmCorpus(datapath('test_mmcorpus_with_index.mm'))
      >>> for document in corpus:
      ...     pass
docstr: Iterate through all documents.
  
  Yields
  ------
  list of (int, numeric)
      Document in the `sparse Gensim bag-of-words format <intro.rst#core-concepts>`__.
  
  Notes
  ------
  The total number of vectors returned is always equal to the number of rows specified in the header.
  Empty documents are inserted and yielded where appropriate, even if they are not explicitly stored in the
  (sparse) Matrix Market file.
code: def __iter__(self):
      """Iterate through all documents.
  
      Yields
      ------
      list of (int, numeric)
          Document in the `sparse Gensim bag-of-words format <intro.rst#core-concepts>`__.
  
      Notes
      ------
      The total number of vectors returned is always equal to the number of rows specified in the header.
      Empty documents are inserted and yielded where appropriate, even if they are not explicitly stored in the
      (sparse) Matrix Market file.
  
      """
      for doc_id, doc in super(MmCorpus, self).__iter__():
          yield doc
  
file_path: gensim/gensim/corpora/mmcorpus.py
imports: import logging
  from gensim import matutils
  from gensim.corpora import IndexedCorpus
label_desc: Use image node_id 2 for calling the MmCorpus obj's underlying member method code with example usage: obj.__iter__() without return types