serialize method
Serialises a transaction into a buffer.
Implementation
@override
Buffer serialize([final TransactionSerializableConfig? config]) {
// Create a writable buffer large enough to store the transaction data.
final BufferWriter serializedTransaction = BufferWriter(2048);
/// Serialize the transaction message.
final Buffer serializedMessage = message.serialize();
// Write the [signatures] encoded length.
final List<int> signaturesEncodedLength =
shortvec.encodeLength(signatures.length);
serializedTransaction.setBuffer(signaturesEncodedLength);
/// Write the [signatures].
for (final Uint8List signature in signatures) {
serializedTransaction.setBuffer(signature);
}
/// Write the [message].
serializedTransaction.setBuffer(serializedMessage);
/// Resize the buffer.
return serializedTransaction.toBuffer(slice: true);
}