PersistedSolution

@Serializable
sealed interface PersistedSolution

Mirrors SolutionPresentation's shape for JSON persistence; converted back via toSolutionPresentation.

Inheritors

Types

Link copied to clipboard
@Serializable
data class Halt(val query: String, val message: String, val logicStackTrace: List<String> = emptyList(), val isTimeout: Boolean = false) : PersistedSolution

An aborted solution, persisted with its error message and stack trace.

Link copied to clipboard
@Serializable
data class No(val query: String) : PersistedSolution

A failed solution.

Link copied to clipboard
@Serializable
data class Yes(val query: String, val bindings: List<PersistedBinding> = emptyList(), val solvedQuery: String? = null, val metadata: Map<String, String> = emptyMap()) : PersistedSolution

A successful solution, persisted with its already-formatted solved query and bindings.