Namespace ZeroInstall.Services.Solvers
Solves requirements by selecting a specific combination of implementations from feeds.
Classes
BacktrackingSolver
Uses limited backtracking to solve Requirements. Does not find all possible solutions!
ExternalSolver
Uses an external process to solve Requirements. The executable for external process is itself provided by another ISolver.
FallbackSolver
Wraps two solvers always passing requests to the primary one initially and falling back to secondary one should the primary one fail.
SelectionCandidateComparer
Ranks SelectionCandidates.
SelectionCandidateProvider
Generates SelectionCandidates for ISolvers to choose among.
SolverDemand
A demand used by ISolvers internally. Wrapper for Requirements that holds SelectionCandidates.
SolverException
Indicates the ISolver was unable to provide Selections that fulfill the Requirements.
SolverExtensions
Provides extension methods for ISolver.
SolverRunBase
Common base class for representing a single run of a solver.
SolverUtils
Helper functions for ISolver implementations.
Interfaces
ISelectionCandidateProvider
Generates SelectionCandidates for ISolvers to choose among.
ISolver
Chooses a set of Implementations to satisfy the requirements of a program and its user.