LogicError

abstract class LogicError(message: String? = null, cause: Throwable? = null, contexts: Array<ExecutionContext>, val type: Struct, val extraData: Term? = null) : ResolutionException

Base class for errors which may occur during resolution, possibly because of it.unibo.tuprolog.solve.primitive.Primitives execution

Author

Giovanni

Enrico

Parameters

message

the detail message string.

cause

the cause of this exception.

contexts

a stack of contexts localising the exception

type

The error type structure

extraData

The possible extra data to be carried with the error

Inheritors

Constructors

Link copied to clipboard
constructor(message: String? = null, cause: Throwable? = null, contexts: Array<ExecutionContext>, type: Struct, extraData: Term? = null)
constructor(message: String? = null, cause: Throwable? = null, context: ExecutionContext, type: Struct, extraData: Term? = null)
constructor(cause: Throwable?, context: ExecutionContext, type: Struct, extraData: Term? = null)

Types

Link copied to clipboard
object Companion

Properties

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

The error Struct as described in Prolog standard: error(error_type, error_extra)

Link copied to clipboard
open val extraData: Term?
Link copied to clipboard

The exception stacktrace; shorthand for context.prologStackTrace

Link copied to clipboard
expect open val message: String?
Link copied to clipboard
open val type: Struct

Functions

Link copied to clipboard
abstract override fun pushContext(newContext: ExecutionContext): LogicError
Link copied to clipboard
open override fun toString(): String
Link copied to clipboard
abstract override fun updateContext(newContext: ExecutionContext, index: Int = 0): LogicError

Creates a new exception instance with the context with in position index updated to newContext. Subclasses should override this method and return the correct instance.

Link copied to clipboard
abstract override fun updateLastContext(newContext: ExecutionContext): LogicError