RuntimePermissionException

class RuntimePermissionException(val callable: KCallable<*>, val receiver: Any?, cause: Throwable? = null) : OopException

Thrown when the platform's reflection facilities deny access to callable on receiver -- on the JVM, this wraps a kotlin.reflect.full.IllegalCallableAccessException, typically raised when the JVM's own access-control checks (e.g. module boundaries, a SecurityManager) reject an otherwise public, reflectively-resolved member.

Surfaces to Prolog as a it.unibo.tuprolog.solve.exception.error.PermissionError with operation it.unibo.tuprolog.solve.exception.error.PermissionError.Operation.INVOKE and permission it.unibo.tuprolog.solve.exception.error.PermissionError.Permission.OOP_METHOD.

Parameters

callable

the member reflective access to which was denied.

receiver

the instance callable was being invoked on, or null for a constructor, static member, or companion-object member.

Constructors

Link copied to clipboard
constructor(callable: KCallable<*>, receiver: Any?, cause: Throwable? = null)

Properties

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

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.