Location.fromJson constructor
Location.fromJson(})
Implementation
factory Location.fromJson(
JsonDecoder jsonDecoder,
String jsonPath,
Object? json, {
ClientUriConverter? clientUriConverter,
}) {
json ??= {};
if (json is Map) {
String file;
if (json.containsKey('file')) {
file =
clientUriConverter?.fromClientFilePath(
jsonDecoder.decodeString('$jsonPath.file', json['file']),
) ??
jsonDecoder.decodeString('$jsonPath.file', json['file']);
} else {
throw jsonDecoder.mismatch(jsonPath, 'file');
}
int offset;
if (json.containsKey('offset')) {
offset = jsonDecoder.decodeInt('$jsonPath.offset', json['offset']);
} else {
throw jsonDecoder.mismatch(jsonPath, 'offset');
}
int length;
if (json.containsKey('length')) {
length = jsonDecoder.decodeInt('$jsonPath.length', json['length']);
} else {
throw jsonDecoder.mismatch(jsonPath, 'length');
}
int startLine;
if (json.containsKey('startLine')) {
startLine = jsonDecoder.decodeInt(
'$jsonPath.startLine',
json['startLine'],
);
} else {
throw jsonDecoder.mismatch(jsonPath, 'startLine');
}
int startColumn;
if (json.containsKey('startColumn')) {
startColumn = jsonDecoder.decodeInt(
'$jsonPath.startColumn',
json['startColumn'],
);
} else {
throw jsonDecoder.mismatch(jsonPath, 'startColumn');
}
int? endLine;
if (json.containsKey('endLine')) {
endLine = jsonDecoder.decodeInt('$jsonPath.endLine', json['endLine']);
}
int? endColumn;
if (json.containsKey('endColumn')) {
endColumn = jsonDecoder.decodeInt(
'$jsonPath.endColumn',
json['endColumn'],
);
}
return Location(
file,
offset,
length,
startLine,
startColumn,
endLine: endLine,
endColumn: endColumn,
);
} else {
throw jsonDecoder.mismatch(jsonPath, 'Location', json);
}
}