class_docstr: Grid search pseudo-optimiser.
docstr: Get the next `batch_size` samples from the Cartesian-product walk
  over the domain.
  
  Args:
      batch_size: (optional) :obj:`int`. The number of samples to suggest
          at once.
  
  Returns:
      A list of :class:`Sample` instances from the domain.
  
  Raises:
      :class:`ExhaustedSearchSpaceError`: if the (discrete part of the)
          domain is fully exhausted and no samples can be generated.
  
  Notes:
      This method does not guarantee that the returned list of
      :class:`Samples` will be of length `batch_size`. This is due to the
      size of the domain and the fact that samples will not be repeated.
docstr_tok: ["Get","the","next","`","batch_size","`","samples","from","the","Cartesian-product","walk","over","the","domain",".","Args",":","batch_size",":","(","optional",")",":","obj",":","`","int","`",".","The","number","of","samples","to","suggest","at","once",".","Returns",":","A","list","of",":","class",":","`","Sample","`","instances","from","the","domain",".","Raises",":",":","class",":","`","ExhaustedSearchSpaceError","`",":","if","the","(","discrete","part","of","the",")","domain","is","fully","exhausted","and","no","samples","can","be","generated",".","Notes",":","This","method","does","not","guarantee","that","the","returned","list","of",":","class",":","`","Samples","`","will","be","of","length","`","batch_size","`",".","This","is","due","to","the","size","of","the","domain","and","the","fact","that","samples","will","not","be","repeated","."]
code: def run_step(self, batch_size: int = 1, **kwargs) -> List[Sample]:
      """Get the next `batch_size` samples from the Cartesian-product walk
      over the domain.
  
      Args:
          batch_size: (optional) :obj:`int`. The number of samples to suggest
              at once.
  
      Returns:
          A list of :class:`Sample` instances from the domain.
  
      Raises:
          :class:`ExhaustedSearchSpaceError`: if the (discrete part of the)
              domain is fully exhausted and no samples can be generated.
  
      Notes:
          This method does not guarantee that the returned list of
          :class:`Samples` will be of length `batch_size`. This is due to the
          size of the domain and the fact that samples will not be repeated.
      """
      if self._is_exhausted:
          raise self.__exhausted_err
  
      samples = []
      for i in range(batch_size):
          try:
              discrete = next(self._discrete_domain_iter)
          except StopIteration:
              self._is_exhausted = True
              break
          if self.continuous_domain:
              continuous = self.continuous_domain.sample()
              samples.append(discrete + continuous)
          else:
              samples.append(discrete)
      if samples:
          return samples
      raise self.__exhausted_err
  
file_path: hypertunity/hypertunity/optimisation/exhaustive.py
imports: from typing import List
  from hypertunity.domain import Domain, DomainNotIterableError, Sample
  from hypertunity.optimisation.base import ExhaustedSearchSpaceError, Optimiser
label_desc: Use image node_id 2 for calling the GridSearch obj's underlying member method code with example usage: obj.run_step(batch_size) and returns: samples