encode method

  1. @override
Uint8List encode(
  1. int protocolVersion,
  2. MessageEncoding encoding
)
override

Encode message to bytes

Implementation

@override
Uint8List encode(int protocolVersion, MessageEncoding encoding) {
  final bytes = <int>[];

  // Block header (80 bytes)
  final headerBytes = header.serialize();
  bytes.addAll(headerBytes);

  // Transaction count (VarInt)
  VarInt.write(bytes, transactions.length);

  // Transactions
  for (final tx in transactions) {
    final txBytes = tx.encode(protocolVersion, encoding);
    bytes.addAll(txBytes);
  }

  return Uint8List.fromList(bytes);
}