encode method

Uint8List encode()

Implementation

Uint8List encode() {
  final output = ByteOutput();

  U8Codec.codec.encodeTo(version, output);
  addressTy.encodeTo(addressTy, output);
  callTy.encodeTo(callTy, output);
  signatureTy.encodeTo(signatureTy, output);

  CompactBigIntCodec.codec.encodeTo(BigInt.from(signedExtensions.length), output);
  for (final extension in signedExtensions) {
    final identifier = extension.identifier;
    CompactBigIntCodec.codec.encodeTo(BigInt.from(identifier.length), output);
    for (var i = 0; i < identifier.length; i++) {
      U8Codec.codec.encodeTo(identifier.codeUnitAt(i), output);
    }

    extension.includedInExtrinsic.encodeTo(extension.includedInExtrinsic, output);
    extension.includedInSignedData.encodeTo(extension.includedInSignedData, output);
  }

  return output.toBytes();
}