Result
The outcome of reflectively invoking a member via Ref.invoke, Ref.assign, or TypeRef.create: either None -- there was no return value, e.g. a void/Unit-returning method -- or a Value wrapping whatever was returned (including null).
This distinction exists because invoke_method/3 (it.unibo.tuprolog.solve.libs.oop.primitives.InvokeMethod) needs to unify its result argument with the returned Term only when one is actually available: unifying against "no value" would make invoking a void method deterministically fail rather than simply succeed without binding anything.