PlutusData.fromJson constructor
Constructs a PlutusData instance from JSON.
Implementation
factory PlutusData.fromJson(Map<String, dynamic> json) {
PlutusDataType type;
try {
type = PlutusDataType.fromName(json.keys.first);
} on StateError {
throw MessageException("Invalid PlutusData json.",
details: {"json": json});
}
switch (type) {
case PlutusDataType.constrPlutusData:
return ConstrPlutusData.fromJson(json);
case PlutusDataType.map:
return PlutusMap.fromJson(json);
case PlutusDataType.list:
return PlutusList.fromJson(json);
case PlutusDataType.integer:
return PlutusInteger.fromJson(json);
default:
return PlutusBytes.fromJson(json);
}
}