KytheEntry.fromJson constructor
KytheEntry.fromJson(
- JsonDecoder jsonDecoder,
- String jsonPath,
- Object? json
)
Implementation
factory KytheEntry.fromJson(
JsonDecoder jsonDecoder, String jsonPath, Object? json) {
json ??= {};
if (json is Map) {
KytheVName source;
if (json.containsKey('source')) {
source = KytheVName.fromJson(
jsonDecoder, '$jsonPath.source', json['source']);
} else {
throw jsonDecoder.mismatch(jsonPath, 'source');
}
String? kind;
if (json.containsKey('kind')) {
kind = jsonDecoder.decodeString('$jsonPath.kind', json['kind']);
}
KytheVName? target;
if (json.containsKey('target')) {
target = KytheVName.fromJson(
jsonDecoder, '$jsonPath.target', json['target']);
}
String fact;
if (json.containsKey('fact')) {
fact = jsonDecoder.decodeString('$jsonPath.fact', json['fact']);
} else {
throw jsonDecoder.mismatch(jsonPath, 'fact');
}
List<int>? value;
if (json.containsKey('value')) {
value = jsonDecoder.decodeList(
'$jsonPath.value', json['value'], jsonDecoder.decodeInt);
}
return KytheEntry(source, fact, kind: kind, target: target, value: value);
} else {
throw jsonDecoder.mismatch(jsonPath, 'KytheEntry', json);
}
}