Source code for prodigy.analysis.solver.solver_type

from enum import Enum

from prodigy.analysis.solver.mock_solver import MockTrueSolver, MockFalseSolver, MockNoneSolver
from prodigy.analysis.solver.smtz3_solver import SMTZ3Solver
from prodigy.analysis.solver.solver import Solver
from prodigy.analysis.solver.sympy_solver import SympySolver


[docs] class SolverType(Enum): SYMPY = SympySolver Z3 = SMTZ3Solver TRUE = MockTrueSolver FALSE = MockFalseSolver NONE = MockNoneSolver
[docs] @staticmethod def make(st: 'SolverType', *args, **kwargs) -> Solver: return st.value(*args, **kwargs)