Package-level declarations
Types
Link copied to clipboard
open class SolverFactorySession(factory: SolverFactory, creationRequest: SolverSessionCreationRequest, capabilities: Set<String>, solutionFeatures: (Solution) -> Map<FeatureId, Map<String, FeatureValue>>, runtimeLibraries: List<Library>) : SolverSession
SolverSession backed by any SolverFactory; no toolkit dependency. Open so a frontend-specific module can customize the SolveOptions used for every resolution (see configureSolveOptions) without this class needing to know about any particular solving mode.
Functions
Link copied to clipboard
fun solverFactoryProfile(factory: SolverFactory, id: SolverProfileId, displayName: String, capabilities: Set<String> = setOf(SolverCapabilities.CANCELLATION), solutionFeatures: (Solution) -> Map<FeatureId, Map<String, FeatureValue>> = { emptyMap() }, runtimeLibraries: List<Library> = listOf(OOPLib, IOLib), newSession: (factory: SolverFactory, request: SolverSessionCreationRequest, capabilities: Set<String>, solutionFeatures: (Solution) -> Map<FeatureId, Map<String, FeatureValue>>, runtimeLibraries: List<Library>) -> SolverFactorySession = ::SolverFactorySession): SolverProfile
Builds a SolverProfile backed by any SolverFactory (prolog, ProbLog, ...); no toolkit dependency.