it.unibo.tuprolog.solve.libs.oop

package it.unibo.tuprolog.solve.libs.oop

Classes

Name Description
interface NullRef: ObjectRef, Any
object OOPLib: AliasedLibrary, Any
interface ObjectRef: Ref, Any
interface ObjectToTermConverter: Any
interface OverloadSelector: Any
interface Ref: Atom, Any
sealed class Result: Any
interface TermToObjectConverter: Any
interface TypeFactory: Any
interface TypeRef: Ref, Any

Fields

Name Description
expect CLASS_NAME_PATTERN: Regex

Methods

kClassFromName

expect fun kClassFromName(qualifiedName: String): Optional><KClass<*>>

Parameters

Name Description
qualifiedName: String

ReturnValue

Name Description
Optional><KClass<*>>

overloadSelector

actual fun overloadSelector(type: KClass<*>, termToObjectConverter: TermToObjectConverter): OverloadSelector

Parameters

Name Description
type: KClass<*>
termToObjectConverter: TermToObjectConverter

ReturnValue

Name Description
OverloadSelector

allSupertypes

expect fun KClass<*>.allSupertypes(strict: Boolean): Sequence><KClass<*>>

Receiver

Name Description
KClass<*>

Parameters

Name Description
strict: Boolean

ReturnValue

Name Description
Sequence><KClass<*>>

isSupertypeOf

infix fun KClass<*>.isSupertypeOf(other: KClass<*>): Boolean

Receiver

Name Description
KClass<*>

Parameters

Name Description
other: KClass<*>

ReturnValue

Name Description
Boolean

isSupertypeOf

fun KClass<*>.isSupertypeOf(other: KClass<*>, strict: Boolean): Boolean

Receiver

Name Description
KClass<*>

Parameters

Name Description
other: KClass<*>
strict: Boolean

ReturnValue

Name Description
Boolean

superTypeDistance

fun KClass<*>.superTypeDistance(other: KClass<*>): Int?

Receiver

Name Description
KClass<*>

Parameters

Name Description
other: KClass<*>

ReturnValue

Name Description
Int?

isSubtypeOf

infix fun KClass<*>.isSubtypeOf(other: KClass<*>): Boolean

Receiver

Name Description
KClass<*>

Parameters

Name Description
other: KClass<*>

ReturnValue

Name Description
Boolean

isSubtypeOf

fun KClass<*>.isSubtypeOf(other: KClass<*>, strict: Boolean): Boolean

Receiver

Name Description
KClass<*>

Parameters

Name Description
other: KClass<*>
strict: Boolean

ReturnValue

Name Description
Boolean

subTypeDistance

fun KClass<*>.subTypeDistance(other: KClass<*>): Int?

Receiver

Name Description
KClass<*>

Parameters

Name Description
other: KClass<*>

ReturnValue

Name Description
Int?

pretty

expect fun KCallable<*>.pretty(): String

Receiver

Name Description
KCallable<*>

ReturnValue

Name Description
String

invoke

expect fun <T> KCallable<T>.invoke(instance: Any?, vararg args: Any?): T

Receiver

Name Description
KCallable<T>

Parameters

Name Description
instance: Any?
vararg args: Any?

ReturnValue

Name Description
T