code: def batch_size(self, batch_size):
          
          if not isinstance(batch_size, integer_types):
              raise TypeError("batch_size must be an integer")
          if batch_size < 0:
              raise ValueError("batch_size must be >= 0")
  
          self.__batch_size = batch_size == 1 and 2 or batch_size
          return self
docs: Limits the number of documents returned in one batch. Each batch
          requires a round trip to the server. It can be adjusted to optimize
          performance and limit data transfer.
  
          .. note:: batch_size can not override MongoDB's internal limits on the
             amount of data it will return to the client in a single batch (i.e
             if you set batch size to 1,000,000,000, MongoDB will currently only
             return 4-16MB of results per batch).
  
          Raises :exc:`TypeError` if `batch_size` is not an integer.
          Raises :exc:`ValueError` if `batch_size` is less than ``0``.
  
          :Parameters:
            - `batch_size`: The size of each batch of results requested.