ExpressionEvaluator

class ExpressionEvaluator<E : ExecutionContext>(request: Solve.Request<E>, index: Int?) : AbstractEvaluator<E, Term>

Evaluates a Term as an expression, w.r.t. the loaded functions provided through request. Throws a TypeError in case a non-evaluable sub-term is met.

Parameters

request

the request of the primitive in which the evaluation should happen

index

the index of the argument being evalued in the aforementioned primitive

Constructors

ExpressionEvaluator
Link copied to clipboard
common
fun <E : ExecutionContext> ExpressionEvaluator(request: Solve.Request<E>, index: Int? = null)
the request of the primitive in which the evaluation should happen

Functions

defaultValue
Link copied to clipboard
common
open override fun defaultValue(term: Term): Term
visit
Link copied to clipboard
common
open fun visit(term: Atom): Term
open fun visit(term: Clause): Term
open fun visit(term: Collection): Term
open fun visit(term: Cons): Term
open fun visit(term: Constant): Term
open fun visit(term: Directive): Term
open fun visit(term: Empty): Term
open fun visit(term: EmptyList): Term
open fun visit(term: EmptySet): Term
open fun visit(term: Fact): Term
open fun visit(term: Indicator): Term
open fun visit(term: Integer): Term
open fun visit(term: List): Term
open fun visit(term: Numeric): Term
open fun visit(term: Real): Term
open fun visit(term: Rule): Term
open fun visit(term: Set): Term
open fun visit(term: Struct): Term
open fun visit(term: Truth): Term
open fun visit(term: Tuple): Term
open fun visit(term: Var): Term
open override fun visit(term: Term): Term
visitAtom
Link copied to clipboard
common
open override fun visitAtom(term: Atom): Term
visitClause
Link copied to clipboard
common
open fun visitClause(term: Clause): Term
visitCollection
Link copied to clipboard
common
open fun visitCollection(term: Collection): Term
visitCons
Link copied to clipboard
common
open fun visitCons(term: Cons): Term
visitConstant
Link copied to clipboard
common
open fun visitConstant(term: Constant): Term
visitDirective
Link copied to clipboard
common
open fun visitDirective(term: Directive): Term
visitEmpty
Link copied to clipboard
common
open fun visitEmpty(term: Empty): Term
visitEmptyList
Link copied to clipboard
common
open fun visitEmptyList(term: EmptyList): Term
visitEmptySet
Link copied to clipboard
common
open fun visitEmptySet(term: EmptySet): Term
visitFact
Link copied to clipboard
common
open fun visitFact(term: Fact): Term
visitIndicator
Link copied to clipboard
common
open override fun visitIndicator(term: Indicator): Term
visitInteger
Link copied to clipboard
common
open fun visitInteger(term: Integer): Term
visitList
Link copied to clipboard
common
open fun visitList(term: List): Term
visitNumeric
Link copied to clipboard
common
open fun visitNumeric(term: Numeric): Term
visitReal
Link copied to clipboard
common
open fun visitReal(term: Real): Term
visitRule
Link copied to clipboard
common
open fun visitRule(term: Rule): Term
visitSet
Link copied to clipboard
common
open fun visitSet(term: Set): Term
visitStruct
Link copied to clipboard
common
open override fun visitStruct(term: Struct): Term
visitTerm
Link copied to clipboard
common
open fun visitTerm(term: Term): Term
visitTruth
Link copied to clipboard
common
open fun visitTruth(term: Truth): Term
visitTuple
Link copied to clipboard
common
open fun visitTuple(term: Tuple): Term
visitVar
Link copied to clipboard
common
open fun visitVar(term: Var): Term