docs: def enumerate(self):
          """
              The method can be used as a simple iterator computing and blocking
              the hitting sets on the fly. It essentially calls :func:`get`
              followed by :func:`block`. Each hitting set is reported as a list
              of objects in the original problem domain, i.e. it is mapped back
              from the solutions over Boolean variables computed by the
              underlying oracle.
  
              :rtype: list(obj)
          """
  
          done = False
          while not done:
              hset = self.get()
  
              if hset != None:
                  self.block(hset)
                  yield hset
              else:
                  done = True