deserializeValueBasedOnTypeTag function

String deserializeValueBasedOnTypeTag(
  1. TypeTag tag,
  2. String val
)

Implementation

String deserializeValueBasedOnTypeTag(TypeTag tag, String val) {
  final de = Deserializer(HexString(val).toUint8Array());
  String res = "";
  if (tag is TypeTagU8) {
    res = de.deserializeU8().toString();
  } else if (tag is TypeTagU64) {
    res = de.deserializeU64().toString();
  } else if (tag is TypeTagU128) {
    res = de.deserializeU128().toString();
  } else if (tag is TypeTagBool) {
    res = de.deserializeBool() ? "true" : "false";
  } else if (tag is TypeTagAddress) {
    res = HexString.fromUint8Array(de.deserializeFixedBytes(32)).hex();
  } else if (tag is TypeTagStruct && tag.isStringTypeTag()) {
    res = de.deserializeStr();
  } else {
    res = val;
  }
  return res;
}