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;
case XdrLedgerEntryType.CONTRACT_DATA:
decodedLedgerEntryData.contractData =
XdrContractDataEntry.decode(stream);
break;
case XdrLedgerEntryType.CONTRACT_CODE:
decodedLedgerEntryData.contractCode =
XdrContractCodeEntry.decode(stream);
break;
case XdrLedgerEntryType.CONFIG_SETTING:
decodedLedgerEntryData.configSetting =
XdrConfigSettingEntry.decode(stream);
break;
}
return decodedLedgerEntryData;
}