Halt
Properties
Link copied to clipboard
The exception that made resolution halt.
Link copied to clipboard
The Struct representing the solution, or null in case of a non-successful solution
Link copied to clipboard
The substitution that has been applied to find the solution, or a failed substitution
Functions
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Returns a Solution equivalent to this one, but with every variable not occurring in query (nor bound, in substitution, to a variable occurring in query) removed from substitution. Useful to drop resolution-internal variables before presenting a solution to a user.
Link copied to clipboard
Link copied to clipboard
abstract fun copy(query: Struct = this.query, exception: ResolutionException = this.exception): Solution.Halt
Returns a Halt solution identical to this one, except for the explicitly-provided arguments.
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open fun <T> whenIs(yes: (Solution.Yes) -> T? = null, no: (Solution.No) -> T? = null, halt: (Solution.Halt) -> T? = null, otherwise: (Solution) -> T = { throw IllegalStateException("Cannot handle solution $it") }): T