FUSED_POJO_TYPE
Content copied to clipboard
A pojo type for which AvailObject.isPojoFusedType is true. This indicates a representation without the juicy class filling, so we have to say how each ancestor is parameterized.
We have to pre-convert self pojo types in the parameterizations map, otherwise one might be encountered during traversal. This is bad because the self pojo type can be equal to another (non-self) pojo type, and in fact almost certainly will be equal to a previously encountered object (a pojo type that it's embedded in), so the serializer will think this is a cyclic structure. To avoid this, we convert any occurrence of a self type into a tuple of size one, containing the name of the java class or interface name. This is enough to reconstruct the self pojo type.