code: public static Class<?> getCollectionFieldType(Field collectionField, int nestingLevel, Map<Integer, Integer> typeIndexesPerLevel) {
  		return getGenericFieldType(collectionField, Collection.class, 0, typeIndexesPerLevel, nestingLevel);
  	}
docs: Determine the generic element type of the given Collection field.
  @param collectionField the collection field to introspect
  @param nestingLevel the nesting level of the target type
  (typically 1; e.g. in case of a List of Lists, 1 would indicate the
  nested List, whereas 2 would indicate the element of the nested List)
  @param typeIndexesPerLevel Map keyed by nesting level, with each value
  expressing the type index for traversal at that level
  @return the generic type, or {@code null} if none