NoSuchAnAliasException

class NoSuchAnAliasException(val dealiasingExpression: Struct) : OopException

Thrown when dealiasingExpression -- a well-formed $Alias expression, unlike the one triggering MalformedAliasException -- names an alias that no it.unibo.tuprolog.solve.libs.oop.rules.Alias fact currently registers, e.g. $undefined_alias when no alias(undefined_alias, _) clause exists (see register/2 / it.unibo.tuprolog.solve.libs.oop.primitives.Register for registering one).

Surfaces to Prolog as an it.unibo.tuprolog.solve.exception.error.ExistenceError of type it.unibo.tuprolog.solve.exception.error.ExistenceError.ObjectType.OOP_ALIAS.

Parameters

dealiasingExpression

the well-formed but unresolvable $Alias expression.

See also

Constructors

Link copied to clipboard
constructor(dealiasingExpression: Struct)

Properties

Link copied to clipboard

The alias term (Alias in $Alias) that could not be resolved.

Link copied to clipboard
expect open val cause: Throwable?
Link copied to clipboard
Link copied to clipboard
expect open val message: String?

Functions

Link copied to clipboard
open override fun toLogicError(context: ExecutionContext, signature: Signature): LogicError

Converts this exception into the LogicError that should actually be thrown by context's solver, while executing signature.