decode static method

Implementation

static XdrAllowTrustOpAsset decode(XdrDataInputStream stream) {
  XdrAllowTrustOpAsset decodedAllowTrustOpAsset = XdrAllowTrustOpAsset(
    XdrAssetType.decode(stream),
  );
  switch (decodedAllowTrustOpAsset.discriminant) {
    case XdrAssetType.ASSET_TYPE_CREDIT_ALPHANUM4:
      int assetCode4size = 4;
      decodedAllowTrustOpAsset._assetCode4 = stream.readBytes(assetCode4size);
      break;
    case XdrAssetType.ASSET_TYPE_CREDIT_ALPHANUM12:
      int assetCode12size = 12;
      decodedAllowTrustOpAsset._assetCode12 = stream.readBytes(
        assetCode12size,
      );
      break;
    default:
      throw Exception(
        "Unknown XdrAllowTrustOpAsset discriminant: ${decodedAllowTrustOpAsset.discriminant.value}",
      );
  }
  return decodedAllowTrustOpAsset;
}