Ref
A Prolog Atom that also acts as a reflective handle onto some JVM/Kotlin entity -- either a live object (ObjectRef) or a type (TypeRef) -- letting Prolog code invoke members and assign properties on it without a hand-written it.unibo.tuprolog.solve.primitive.Primitive for each one.
This is the core abstraction :oop-lib uses to expose reflection to Prolog: predicates such as invoke_method/3 (it.unibo.tuprolog.solve.libs.oop.primitives.InvokeMethod) and assign/3 (it.unibo.tuprolog.solve.libs.oop.primitives.Assign) simply delegate to invoke and assign on whichever Ref they are given.
See also
Inheritors
Properties
Functions
Like assign, but converting value via TermToObjectConverter.default.
Assigns value (converted via objectConverter) to the mutable property named propertyName on this reference, selecting the overload whose type best matches value.
Like invoke, but converting arguments via TermToObjectConverter.default.
Invokes the (possibly overloaded) member named methodName on this reference, converting arguments to actual JVM/Kotlin values via objectConverter and picking the overload whose formal parameters best match them.