code: def getSolutions(self):
          
          domains, constraints, vconstraints = self._getArgs()
          if not domains:
              return []
          return self._solver.getSolutions(domains, constraints, vconstraints)
docs: Find and return all solutions to the problem
  
          Example:
  
          >>> problem = Problem()
          >>> problem.getSolutions() == []
          True
          >>> problem.addVariables(["a"], [42])
          >>> problem.getSolutions()
          [{'a': 42}]
  
          @return: All solutions for the problem
          @rtype: list of dictionaries mapping variables to values