ExpressionReducer

class ExpressionReducer<E : ExecutionContext>(request: Solve.Request<E>, index: Int? = null) : AbstractEvaluator<E, <ERROR CLASS>>

Reduces a Term as an expression by evaluating all the evaluable sub-terms it contains w.r.t. the loaded functions provided through request. If the input expression is non-evaluable, it remains unaffected and no error is thrown

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

Link copied to clipboard
fun <E : ExecutionContext> ExpressionReducer(request: Solve.Request<E>, index: Int? = null)

Functions

Link copied to clipboard
open fun defaultValue(term: <ERROR CLASS>): <ERROR CLASS>
Link copied to clipboard
open override fun unevaluable(struct: <ERROR CLASS>): <ERROR CLASS>
Link copied to clipboard
open fun visitAtom(term: <ERROR CLASS>): <ERROR CLASS>
Link copied to clipboard
open fun visitIndicator(term: <ERROR CLASS>): <ERROR CLASS>
Link copied to clipboard
open fun visitStruct(term: <ERROR CLASS>): <ERROR CLASS>
Link copied to clipboard
open fun visitTerm(term: <ERROR CLASS>): <ERROR CLASS>