Query if a marshaler can marshal to/from a particular native and managed type; if it supports
the combination, allow creating a marshaler instance to do the serialization.
Not all queryable instances will support exactly one combination. Some, such as the
primitive queryable will support all primitive to/from managed mappings (as long as they are
1:1). Others, such as the rectangle queryable will only support integer to rectangle mappings.
Yet some others are codependent on other queryables; e.g. array queryables might only support
a type map for {@code T[]} if another queryable exists with support for the component type
{@code T}. |