encode static method

void encode(
  1. XdrDataOutputStream stream,
  2. XdrOperationBody encodedOperationBody
)

Implementation

static void encode(
  XdrDataOutputStream stream,
  XdrOperationBody encodedOperationBody,
) {
  stream.writeInt(encodedOperationBody.discriminant.value);
  switch (encodedOperationBody.discriminant) {
    case XdrOperationType.CREATE_ACCOUNT:
      XdrCreateAccountOp.encode(
        stream,
        encodedOperationBody._createAccountOp!,
      );
      break;
    case XdrOperationType.PAYMENT:
      XdrPaymentOp.encode(stream, encodedOperationBody._paymentOp!);
      break;
    case XdrOperationType.PATH_PAYMENT_STRICT_RECEIVE:
      XdrPathPaymentStrictReceiveOp.encode(
        stream,
        encodedOperationBody._pathPaymentStrictReceiveOp!,
      );
      break;
    case XdrOperationType.MANAGE_SELL_OFFER:
      XdrManageSellOfferOp.encode(
        stream,
        encodedOperationBody._manageSellOfferOp!,
      );
      break;
    case XdrOperationType.CREATE_PASSIVE_SELL_OFFER:
      XdrCreatePassiveSellOfferOp.encode(
        stream,
        encodedOperationBody._createPassiveSellOfferOp!,
      );
      break;
    case XdrOperationType.SET_OPTIONS:
      XdrSetOptionsOp.encode(stream, encodedOperationBody._setOptionsOp!);
      break;
    case XdrOperationType.CHANGE_TRUST:
      XdrChangeTrustOp.encode(stream, encodedOperationBody._changeTrustOp!);
      break;
    case XdrOperationType.ALLOW_TRUST:
      XdrAllowTrustOp.encode(stream, encodedOperationBody._allowTrustOp!);
      break;
    case XdrOperationType.ACCOUNT_MERGE:
      XdrMuxedAccount.encode(stream, encodedOperationBody._destination!);
      break;
    case XdrOperationType.INFLATION:
      break;
    case XdrOperationType.MANAGE_DATA:
      XdrManageDataOp.encode(stream, encodedOperationBody._manageDataOp!);
      break;
    case XdrOperationType.BUMP_SEQUENCE:
      XdrBumpSequenceOp.encode(stream, encodedOperationBody._bumpSequenceOp!);
      break;
    case XdrOperationType.MANAGE_BUY_OFFER:
      XdrManageBuyOfferOp.encode(
        stream,
        encodedOperationBody._manageBuyOfferOp!,
      );
      break;
    case XdrOperationType.PATH_PAYMENT_STRICT_SEND:
      XdrPathPaymentStrictSendOp.encode(
        stream,
        encodedOperationBody._pathPaymentStrictSendOp!,
      );
      break;
    case XdrOperationType.CREATE_CLAIMABLE_BALANCE:
      XdrCreateClaimableBalanceOp.encode(
        stream,
        encodedOperationBody._createClaimableBalanceOp!,
      );
      break;
    case XdrOperationType.CLAIM_CLAIMABLE_BALANCE:
      XdrClaimClaimableBalanceOp.encode(
        stream,
        encodedOperationBody._claimClaimableBalanceOp!,
      );
      break;
    case XdrOperationType.BEGIN_SPONSORING_FUTURE_RESERVES:
      XdrBeginSponsoringFutureReservesOp.encode(
        stream,
        encodedOperationBody._beginSponsoringFutureReservesOp!,
      );
      break;
    case XdrOperationType.END_SPONSORING_FUTURE_RESERVES:
      break;
    case XdrOperationType.REVOKE_SPONSORSHIP:
      XdrRevokeSponsorshipOp.encode(
        stream,
        encodedOperationBody._revokeSponsorshipOp!,
      );
      break;
    case XdrOperationType.CLAWBACK:
      XdrClawbackOp.encode(stream, encodedOperationBody._clawbackOp!);
      break;
    case XdrOperationType.CLAWBACK_CLAIMABLE_BALANCE:
      XdrClawbackClaimableBalanceOp.encode(
        stream,
        encodedOperationBody._clawbackClaimableBalanceOp!,
      );
      break;
    case XdrOperationType.SET_TRUST_LINE_FLAGS:
      XdrSetTrustLineFlagsOp.encode(
        stream,
        encodedOperationBody._setTrustLineFlagsOp!,
      );
      break;
    case XdrOperationType.LIQUIDITY_POOL_DEPOSIT:
      XdrLiquidityPoolDepositOp.encode(
        stream,
        encodedOperationBody._liquidityPoolDepositOp!,
      );
      break;
    case XdrOperationType.LIQUIDITY_POOL_WITHDRAW:
      XdrLiquidityPoolWithdrawOp.encode(
        stream,
        encodedOperationBody._liquidityPoolWithdrawOp!,
      );
      break;
    case XdrOperationType.INVOKE_HOST_FUNCTION:
      XdrInvokeHostFunctionOp.encode(
        stream,
        encodedOperationBody._invokeHostFunctionOp!,
      );
      break;
    case XdrOperationType.EXTEND_FOOTPRINT_TTL:
      XdrExtendFootprintTTLOp.encode(
        stream,
        encodedOperationBody._extendFootprintTTLOp!,
      );
      break;
    case XdrOperationType.RESTORE_FOOTPRINT:
      XdrRestoreFootprintOp.encode(
        stream,
        encodedOperationBody._restoreFootprintOp!,
      );
      break;
    default:
      break;
  }
}