in freemarker-generator-cli/src/main/java/org/apache/freemarker/generator/cli/config/DataModelSupplier.java [130:153]
private static Map<String, Object> toMap(String name, Object obj, boolean isExplodedDataModel) {
final Map<String, Object> result = new HashMap<>();
if (obj instanceof Map) {
final Map<String, Object> map = (Map<String, Object>) obj;
if (isExplodedDataModel) {
map.forEach(result::put);
} else {
result.put(name, map);
}
} else if (obj instanceof List) {
final List<Object> list = (List<Object>) obj;
if (isExplodedDataModel) {
for (Object entry : list) {
final Map<String, Object> map = (Map<String, Object>) entry;
map.forEach(result::put);
}
} else {
result.put(name, list);
}
}
return result;
}