SyntaxError

class SyntaxError(message: String? = null, cause: Throwable? = null, contexts: Array<ExecutionContext>, extraData: Term? = null) : LogicError

The syntax error occurs when a sequence of characters being read does not conform to the grammar of Prolog terms, e.g. while parsing a source file or a read_term-style built-in's input.

Parameters

message

the detail message string.

cause

the cause of this exception.

contexts

a stack of contexts localising the exception

extraData

The possible extra data to be carried with the error

Constructors

Link copied to clipboard
constructor(message: String? = null, cause: Throwable? = null, contexts: Array<ExecutionContext>, extraData: Term? = null)
constructor(message: String? = null, cause: Throwable? = null, context: ExecutionContext, 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
open override fun pushContext(newContext: ExecutionContext): SyntaxError
Link copied to clipboard
open override fun toString(): String
Link copied to clipboard
open override fun updateContext(newContext: ExecutionContext, index: Int = 0): SyntaxError

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
open override fun updateLastContext(newContext: ExecutionContext): SyntaxError