Class BacktrackingSolver
- Namespace
- ZeroInstall.Services.Solvers
- Assembly
- ZeroInstall.Services.dll
Uses limited backtracking to solve Requirements. Does not find all possible solutions!
public class BacktrackingSolver : ISolver
- Inheritance
-
BacktrackingSolver
- Implements
- Inherited Members
- Extension Methods
Remarks
This class is immutable and thread-safe.
Constructors
BacktrackingSolver(ISelectionCandidateProvider)
Uses limited backtracking to solve Requirements. Does not find all possible solutions!
public BacktrackingSolver(ISelectionCandidateProvider candidateProvider)
Parameters
candidateProvider
ISelectionCandidateProvider
Remarks
This class is immutable and thread-safe.
Methods
Solve(Requirements)
Provides Selections that satisfy a set of Requirements.
public Selections Solve(Requirements requirements)
Parameters
requirements
RequirementsThe requirements to satisfy.
Returns
- Selections
The selected ImplementationSelections.
Remarks
Feed files may be downloaded, signature validation is performed, implementations are not downloaded.
Exceptions
- OperationCanceledException
The user canceled the task.
- ArgumentException
requirements
is incomplete.- IOException
A problem occurred while reading the feed file.
- WebException
A problem occurred while fetching the feed file.
- UnauthorizedAccessException
Access to the cache is not permitted.
- SignatureException
The signature data of a remote feed file could not be verified.
- SolverException
The solver was unable to provide Selections that fulfill the
requirements
.