if (ListMultimap.class.isAssignableFrom(raw)) {
if (ImmutableListMultimap.class.isAssignableFrom(raw)) {
// TODO
}
if (ArrayListMultimap.class.isAssignableFrom(raw)) {
return new ArrayListMultimapDeserializer(type, keyDeserializer,
elementTypeDeserializer, elementDeserializer);
}
if (LinkedListMultimap.class.isAssignableFrom(raw)) {
return new LinkedListMultimapDeserializer(type, keyDeserializer,
elementTypeDeserializer, elementDeserializer);
}
if (ForwardingListMultimap.class.isAssignableFrom(raw)) {
// TODO
}
// TODO: Remove the default fall-through once all implementations are in place.
return new ArrayListMultimapDeserializer(type, keyDeserializer,
elementTypeDeserializer, elementDeserializer);
}
// SetMultimaps
if (SetMultimap.class.isAssignableFrom(raw)) {