deserialize method

  1. @override
BlockStatement deserialize(
  1. Uint8List payload
)
override

Implementation

@override
BlockStatement deserialize(Uint8List payload) {
  var buffer = payload;
  var transactionStatementCount = bytesToInt(buffer.sublist(0, 4), 4);
  buffer = buffer.sublist(4);
  var transactionStatements = ArrayHelpers.readArrayCount(
          buffer, TransactionStatement(), transactionStatementCount)
      .map((item) => item as TransactionStatement)
      .toList();
  buffer = buffer.sublist(ArrayHelpers.size(transactionStatements));
  var addressResolutionStatementCount = bytesToInt(buffer.sublist(0, 4), 4);
  buffer = buffer.sublist(4);
  var addressResolutionStatements = ArrayHelpers.readArrayCount(buffer,
          AddressResolutionStatement(), addressResolutionStatementCount)
      .map((item) => item as AddressResolutionStatement)
      .toList();
  buffer = buffer.sublist(ArrayHelpers.size(addressResolutionStatements));
  var mosaicResolutionStatementCount = bytesToInt(buffer.sublist(0, 4), 4);
  buffer = buffer.sublist(4);
  var mosaicResolutionStatements = ArrayHelpers.readArrayCount(
          buffer, MosaicResolutionStatement(), mosaicResolutionStatementCount)
      .map((item) => item as MosaicResolutionStatement)
      .toList();
  buffer = buffer.sublist(ArrayHelpers.size(mosaicResolutionStatements));

  var instance = BlockStatement(
    transactionStatements: transactionStatements,
    addressResolutionStatements: addressResolutionStatements,
    mosaicResolutionStatements: mosaicResolutionStatements,
  );
  return instance;
}