Uncaller

An uncaller generates portrayals of objects.

Uncallers are used by deSubgraphKit to convert each object in the graph being serialized into its serializable portrayal.

Original javadoc :

If obj is neither a bare string nor a scalar, and is transparent to this Uncaller, then uncaller.optUncall(obj) returns a triple corresponding to the three arguments of E.call/3: The receiver The "verb", ie, the message name to call with The list of arguments  Alternatively, uncall may return null to indicate that obj was not uncallable by this uncall function.

FQN:

Protocol
Returns a portrayal for obj, or null if this uncaller does not handle the provided object.

Original javadoc :

Returns a description of the call that would reconstruct the argument object.

The reconstructing call would proceed not with the elements of this description, but with reconstructions of the elements of this description. Return null to indicate that this Uncaller has no description to offer, in which case another one may be tried.

If a description triple is returned, the elements of this triple must not provide any further authority beyond that held by a client who already has both this Uncaller and obj. In particular, if this Uncaller is an authority-diminishing facet on a more powerful Uncaller, then this facet may chose to implements its in terms of the underlying's. It so, it had better be very careful to re-diminish the result before returning it. See BaseLoader for a convenience to help write such wrappers.

@return :nullOk[Tuple[any, String, List]]; either null or a 3-element list of a receiver object whose reconstruction would receive the message a String, which is the name of the message to call <li>a list of arguments, whose reconstruction are the actual arguments to the call. </ul>