decode method Null safety

XdrLedgerEntryData decode(
  1. XdrDataInputStream stream
)

Implementation

static XdrLedgerEntryData decode(XdrDataInputStream stream) {
  XdrLedgerEntryData decodedLedgerEntryData =
      XdrLedgerEntryData(XdrLedgerEntryType.decode(stream));
  switch (decodedLedgerEntryData.discriminant) {
    case XdrLedgerEntryType.ACCOUNT:
      decodedLedgerEntryData.account = XdrAccountEntry.decode(stream);
      break;
    case XdrLedgerEntryType.TRUSTLINE:
      decodedLedgerEntryData.trustLine = XdrTrustLineEntry.decode(stream);
      break;
    case XdrLedgerEntryType.OFFER:
      decodedLedgerEntryData.offer = XdrOfferEntry.decode(stream);
      break;
    case XdrLedgerEntryType.DATA:
      decodedLedgerEntryData.data = XdrDataEntry.decode(stream);
      break;
    case XdrLedgerEntryType.CLAIMABLE_BALANCE:
      decodedLedgerEntryData.claimableBalance =
          XdrClaimableBalanceEntry.decode(stream);
      break;
    case XdrLedgerEntryType.LIQUIDITY_POOL:
      decodedLedgerEntryData.liquidityPool =
          XdrLiquidityPoolEntry.decode(stream);
      break;
  }
  return decodedLedgerEntryData;
}