(class from pyomo.contrib.solver.common.factory)
pyomo.contrib.solver.common.factory
Bases: Factory
Factory
Factory class for generating instances of solver interfaces (API v2)
Methods
__init__([description])
__init__
doc(name)
doc
get_class(name)
get_class
register(name[, legacy_name, doc])
register
Register a new solver with this solver factory
unregister(name)
unregister
Member Documentation
This will register the solver both with this SolverFactory and with the original (legacy) LegacySolverFactory
SolverFactory
LegacySolverFactory
Examples
This method can either be called as a decorator on a solver interface class definition, e.g.:
from pyomo.contrib.solver.common.base import SolverBase @SolverFactory.register("test_solver_1") class TestSolver1(SolverBase): pass
Or explicitly:
class TestSolver2(SolverBase): pass SolverFactory.register("test_solver_2")(TestSolver2)
When called explicitly, you can pass a custom class to register with the LegacySolverFactory:
from pyomo.contrib.solver.common.base import LegacySolverWrapper class LegacyTestSolver2(LegacySolverWrapper, TestSolver2): pass SolverFactory.register("test_solver_2a")(TestSolver2, LegacyTestSolver2)
name (str) – The name used to register this solver interface class
legacy_name (str) – The name to use to register the legacy interface wrapper to this solver interface in the LegacySolverInterface. If None, then name will be used.
None
name
doc (str) – Extended description of this solver interface.