convertTo function
dynamic
convertTo(
- dynamic request,
- dynamic responseAs,
- dynamic jsonObj
Implementation
dynamic convertTo(dynamic request, dynamic responseAs, dynamic jsonObj) {
TypeContext? reqContext;
if (request is IConvertible) {
reqContext = request.context;
} else if (request is List) {
var firstRequest = request[0];
var firstResponse = firstRequest.createResponse();
var elementType = nameOf(firstResponse);
var listType = "List<${elementType}>";
reqContext = createListContext((firstRequest as IConvertible).context!, listType, responseAs);
return ListConverter.populate(responseAs, listType, jsonObj, reqContext);
}
if (responseAs is List) {
var listType = getResponseType(request, responseAs);
return ListConverter.populate(responseAs, listType, jsonObj, reqContext);
}
if (reqContext != null && responseAs is IConvertible) {
responseAs.context = reqContext;
}
var fromMap = responseAs.fromMap;
var ret = fromMap(jsonObj);
return ret;
}