ListOf describes a special case where an API returns "raw" list (e.g [{"key":"value"}])
which, due to the nature of type erasure, we would have a hard time deserializing.
Objects which use this annotation should be empty subclasses of
ArrayList,
contain a public constructor which calls super, and also declare the
Model
annotation.
Example, given some complex object ComplexObj:
@Model
@ListOf(listClass = ComplexObj.class)
public class ComplexObjList extends ArrayListComplexObj {
public ComplexObjList() {
super();
}
}