data class Request<C : ExecutionContext> : Solve
Fields
Name | Description |
---|---|
val query: Struct
|
The current query Struct of this request |
val signature: Signature
|
Signature of the goal to be solved in this Request |
val arguments: List<Term>
|
Arguments with which the goal is invoked in this Request |
val context: C
|
The context that's current at Request making |
val requestIssuingInstant: TimeInstant
|
The time instant when the request was submitted for resolution |
val executionMaxDuration: TimeDuration
|
The execution max duration after which the computation should end, because no more useful |
Constructors
<init>
constructor(signature: Signature, arguments: List<Term>, context: C, requestIssuingInstant: TimeInstant, executionMaxDuration: TimeDuration)
Class representing a Request to be full-filled by the Solver
Parameters
Name | Description |
---|---|
signature: Signature
|
|
arguments: List<Term>
|
|
context: C
|
|
requestIssuingInstant: TimeInstant
|
|
executionMaxDuration: TimeDuration
|
Methods
replyWith
fun replyWith(substitution: Substitution, sideEffectManager: SideEffectManager?, vararg sideEffects: SideEffect): Response
Creates a new Response to this Request
Parameters
Name | Description |
---|---|
substitution: Substitution
|
|
sideEffectManager: SideEffectManager?
|
|
vararg sideEffects: SideEffect
|
ReturnValue
Name | Description |
---|---|
Response
|
replyWith
fun replyWith(substitution: Substitution, sideEffectManager: SideEffectManager?, buildSideEffects: SideEffectsBuilder.()->Unit): Response
Creates a new Response to this Request
Parameters
Name | Description |
---|---|
substitution: Substitution
|
|
sideEffectManager: SideEffectManager?
|
|
buildSideEffects: SideEffectsBuilder.()->Unit
|
ReturnValue
Name | Description |
---|---|
Response
|
replyWith
fun replyWith(solution: Solution, sideEffectManager: SideEffectManager?, vararg sideEffects: SideEffect): Response
Creates a new Response to this Request
Parameters
Name | Description |
---|---|
solution: Solution
|
|
sideEffectManager: SideEffectManager?
|
|
vararg sideEffects: SideEffect
|
ReturnValue
Name | Description |
---|---|
Response
|
replyWith
fun replyWith(solution: Solution, sideEffectManager: SideEffectManager?, buildSideEffects: SideEffectsBuilder.()->Unit): Response
Creates a new Response to this Request
Parameters
Name | Description |
---|---|
solution: Solution
|
|
sideEffectManager: SideEffectManager?
|
|
buildSideEffects: SideEffectsBuilder.()->Unit
|
ReturnValue
Name | Description |
---|---|
Response
|
replyWith
fun replyWith(condition: Boolean, sideEffectManager: SideEffectManager?, vararg sideEffects: SideEffect): Response
Creates a new successful or failed Response depending on condition; to be used when the substitution doesn't change
Parameters
Name | Description |
---|---|
condition: Boolean
|
|
sideEffectManager: SideEffectManager?
|
|
vararg sideEffects: SideEffect
|
ReturnValue
Name | Description |
---|---|
Response
|
replyWith
fun replyWith(condition: Boolean, sideEffectManager: SideEffectManager?, buildSideEffects: SideEffectsBuilder.()->Unit): Response
Creates a new successful or failed Response depending on condition; to be used when the substitution doesn't change
Parameters
Name | Description |
---|---|
condition: Boolean
|
|
sideEffectManager: SideEffectManager?
|
|
buildSideEffects: SideEffectsBuilder.()->Unit
|
ReturnValue
Name | Description |
---|---|
Response
|
replySuccess
fun replySuccess(substitution: Unifier, sideEffectManager: SideEffectManager?, vararg sideEffects: SideEffect): Response
Creates a new successful Response to this Request, with substitution
Parameters
Name | Description |
---|---|
substitution: Unifier
|
|
sideEffectManager: SideEffectManager?
|
|
vararg sideEffects: SideEffect
|
ReturnValue
Name | Description |
---|---|
Response
|
replySuccess
fun replySuccess(substitution: Unifier, sideEffectManager: SideEffectManager?, buildSideEffects: SideEffectsBuilder.()->Unit): Response
Creates a new successful Response to this Request, with substitution
Parameters
Name | Description |
---|---|
substitution: Unifier
|
|
sideEffectManager: SideEffectManager?
|
|
buildSideEffects: SideEffectsBuilder.()->Unit
|
ReturnValue
Name | Description |
---|---|
Response
|
replyFail
fun replyFail(sideEffectManager: SideEffectManager?, vararg sideEffects: SideEffect): Response
Creates a new failed Response to this Request
Parameters
Name | Description |
---|---|
sideEffectManager: SideEffectManager?
|
|
vararg sideEffects: SideEffect
|
ReturnValue
Name | Description |
---|---|
Response
|
replyFail
fun replyFail(sideEffectManager: SideEffectManager?, buildSideEffects: SideEffectsBuilder.()->Unit): Response
Creates a new failed Response to this Request
Parameters
Name | Description |
---|---|
sideEffectManager: SideEffectManager?
|
|
buildSideEffects: SideEffectsBuilder.()->Unit
|
ReturnValue
Name | Description |
---|---|
Response
|
replyException
fun replyException(exception: ResolutionException, sideEffectManager: SideEffectManager?, vararg sideEffects: SideEffect): Response
Creates a new halt Response to this Request, with cause exception
Parameters
Name | Description |
---|---|
exception: ResolutionException
|
|
sideEffectManager: SideEffectManager?
|
|
vararg sideEffects: SideEffect
|
ReturnValue
Name | Description |
---|---|
Response
|
replyException
fun replyException(exception: ResolutionException, sideEffectManager: SideEffectManager?, buildSideEffects: SideEffectsBuilder.()->Unit): Response
Creates a new halt Response to this Request, with cause exception
Parameters
Name | Description |
---|---|
exception: ResolutionException
|
|
sideEffectManager: SideEffectManager?
|
|
buildSideEffects: SideEffectsBuilder.()->Unit
|
ReturnValue
Name | Description |
---|---|
Response
|
solve
fun solve(goal: Struct, maxDuration: TimeDuration): Sequence
Parameters
Name | Description |
---|---|
goal: Struct
|
|
maxDuration: TimeDuration
|
ReturnValue
Name | Description |
---|---|
Sequence
|
Class representing a Request to be full-filled by the Solver