code: async def fetch(self, n, *, timeout=None):
          r
          self._check_ready()
          if n <= 0:
              raise exceptions.InterfaceError('n must be greater than zero')
          if self._exhausted:
              return []
          recs = await self._exec(n, timeout)
          if len(recs) < n:
              self._exhausted = True
          return recs
docs: r"""Return the next *n* rows as a list of :class:`Record` objects.
  
          :param float timeout: Optional timeout value in seconds.
  
          :return: A list of :class:`Record` instances.