Package-level declarations

Types

Link copied to clipboard
class DatalogViolationException(prefix: String = "", val culprit: Any, suffix: String = "", cause: Throwable? = null) : TuPrologException

Thrown by the ensure* functions of it.unibo.tuprolog.datalog (e.g. it.unibo.tuprolog.datalog.ensureIsDatalog, it.unibo.tuprolog.datalog.ensureHasNoCompound) when a it.unibo.tuprolog.core.Clause or an it.unibo.tuprolog.theory.Theory fails one of the Datalog well-formedness checks (contains a compound argument, has an unsafe head or negated variable, or is recursive).

Link copied to clipboard

Thrown by it.unibo.tuprolog.datalog.asLiteral when a Term cannot be interpreted as a Prolog/Datalog literal (a callable goal): only a it.unibo.tuprolog.core.Struct or a it.unibo.tuprolog.core.Var can occur as a literal (the latter is wrapped into a call/1 goal), so e.g. a bare number or list argument found where a body goal or head was expected triggers this exception.