ExecutionContext

interface ExecutionContext: ExecutionContextAware, Any

An interface representing the Solver execution context, containing important information that determines its behaviour

Fields

Name Description
abstract procedure: Struct?

The current procedure being executed

abstract substitution: Unifier

The set of current substitution till this context

abstract logicStackTrace: List<Struct>

The Prolog call stacktrace till this ExecutionContext

abstract customData: CustomDataStore

Methods

createSolver

abstract fun createSolver(libraries: Libraries, flags: FlagStore, staticKb: Theory, dynamicKb: Theory, inputChannels: InputStore, outputChannels: OutputStore): Solver

Parameters

Name Description
libraries: Libraries
flags: FlagStore
staticKb: Theory
dynamicKb: Theory
inputChannels: InputStore
outputChannels: OutputStore

ReturnValue

Name Description
Solver

createMutableSolver

abstract fun createMutableSolver(libraries: Libraries, flags: FlagStore, staticKb: Theory, dynamicKb: Theory, inputChannels: InputStore, outputChannels: OutputStore): MutableSolver

Parameters

Name Description
libraries: Libraries
flags: FlagStore
staticKb: Theory
dynamicKb: Theory
inputChannels: InputStore
outputChannels: OutputStore

ReturnValue

Name Description
MutableSolver

apply

open fun apply(sideEffect: SideEffect): ExecutionContext

Parameters

Name Description
sideEffect: SideEffect

ReturnValue

Name Description
ExecutionContext

apply

open fun apply(sideEffects: Iterable<SideEffect>): ExecutionContext

Parameters

Name Description
sideEffects: Iterable<SideEffect>

ReturnValue

Name Description
ExecutionContext

apply

open fun apply(sideEffects: Sequence<SideEffect>): ExecutionContext

Parameters

Name Description
sideEffects: Sequence<SideEffect>

ReturnValue

Name Description
ExecutionContext

update

abstract fun update(libraries: Libraries, flags: FlagStore, staticKb: Theory, dynamicKb: Theory, operators: OperatorSet, inputChannels: InputStore, outputChannels: OutputStore, customData: CustomDataStore): ExecutionContext

Parameters

Name Description
libraries: Libraries
flags: FlagStore
staticKb: Theory
dynamicKb: Theory
operators: OperatorSet
inputChannels: InputStore
outputChannels: OutputStore
customData: CustomDataStore

ReturnValue

Name Description
ExecutionContext