Request
data class Request<out C : ExecutionContext>( val signature: Signature, val arguments: List<<ERROR CLASS>>, val context: C, val requestIssuingInstant: TimeInstant = currentTimeInstant(), val executionMaxDuration: TimeDuration = TimeDuration.MAX_VALUE) : Solve
Content copied to clipboard
Class representing a Request to be full-filled by the Solver
Constructors
Link copied to clipboard
fun <out C : ExecutionContext> Request( signature: Signature, arguments: List<<ERROR CLASS>>, context: C, requestIssuingInstant: TimeInstant = currentTimeInstant(), executionMaxDuration: TimeDuration = TimeDuration.MAX_VALUE)
Content copied to clipboard
Functions
Link copied to clipboard
fun replyException( exception: ResolutionException, sideEffectManager: SideEffectManager? = null, vararg sideEffects: SideEffect): Solve.Response
Content copied to clipboard
fun replyException( exception: ResolutionException, sideEffectManager: SideEffectManager? = null, buildSideEffects: SideEffectsBuilder.() -> Unit): Solve.Response
Content copied to clipboard
Creates a new halt Response to this Request, with cause exception
Link copied to clipboard
fun replyFail(sideEffectManager: SideEffectManager? = null, vararg sideEffects: SideEffect): Solve.Response
Content copied to clipboard
fun replyFail(sideEffectManager: SideEffectManager? = null, buildSideEffects: SideEffectsBuilder.() -> Unit): Solve.Response
Content copied to clipboard
Creates a new failed Response to this Request
Link copied to clipboard
fun replySuccess( substitution: <ERROR CLASS> = Substitution.empty(), sideEffectManager: SideEffectManager? = null, vararg sideEffects: SideEffect): Solve.Response
Content copied to clipboard
fun replySuccess( substitution: <ERROR CLASS> = Substitution.empty(), sideEffectManager: SideEffectManager? = null, buildSideEffects: SideEffectsBuilder.() -> Unit): Solve.Response
Content copied to clipboard
Creates a new successful Response to this Request, with substitution
Link copied to clipboard
fun replyWith( substitution: <ERROR CLASS>, sideEffectManager: SideEffectManager? = null, vararg sideEffects: SideEffect): Solve.Response
Content copied to clipboard
fun replyWith( substitution: <ERROR CLASS>, sideEffectManager: SideEffectManager? = null, buildSideEffects: SideEffectsBuilder.() -> Unit): Solve.Response
Content copied to clipboard
fun replyWith( solution: Solution, sideEffectManager: SideEffectManager? = null, vararg sideEffects: SideEffect): Solve.Response
Content copied to clipboard
fun replyWith( solution: Solution, sideEffectManager: SideEffectManager? = null, buildSideEffects: SideEffectsBuilder.() -> Unit): Solve.Response
Content copied to clipboard
Creates a new Response to this Request
fun replyWith( condition: Boolean, sideEffectManager: SideEffectManager? = null, vararg sideEffects: SideEffect): Solve.Response
Content copied to clipboard
fun replyWith( condition: Boolean, sideEffectManager: SideEffectManager? = null, buildSideEffects: SideEffectsBuilder.() -> Unit): Solve.Response
Content copied to clipboard
Link copied to clipboard
fun solve(goal: <ERROR CLASS>, maxDuration: TimeDuration = TimeDuration.MAX_VALUE): Sequence<Solution>
Content copied to clipboard
Properties
Extensions
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.checkTermIsRecursivelyCallable(term: <ERROR CLASS>): TypeError?
Content copied to clipboard
Link copied to clipboard
open override fun Solve.Request<ExecutionContext>.ensureType(context: ExecutionContext, term: <ERROR CLASS>)
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringAllArgumentsAreInstantiated(): Solve.Request<C>
Content copied to clipboard
Utility function to ensure that all arguments of Solve.Request are instantiated and not (still) Variables
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsArity(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsAtom(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsCallable(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsChar(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsCharCode(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsCompound(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsConstant(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsGround(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsInstantiated(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsInteger(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsList(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsNonNegativeInteger(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsNumeric(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsSpecifier(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsStruct(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsVariable(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsWellFormedClause(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsWellFormedIndicator(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringArgumentIsWellFormedList(index: Int): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringClauseProcedureHasPermission(clause: <ERROR CLASS>, operation: PermissionError.Operation): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringProcedureHasPermission(signature: Signature?, operation: PermissionError.Operation): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringTermIsCharCode(term: <ERROR CLASS>): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.ensuringTermIsWellFormedList(term: <ERROR CLASS>): Solve.Request<C>
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.notImplemented(message: String = "Primitive for "): Solve.Response
Content copied to clipboard
Link copied to clipboard
fun <C : ExecutionContext> Solve.Request<C>.notSupported(message: String = "Operation "): Solve.Response
Content copied to clipboard