toBytes method

Uint8List toBytes(
  1. RpcConfig config
)

Implementation

Uint8List toBytes(RpcConfig config) {
  if (function < 0 ||
      function > (config.extendedFunctionIdentifiers ? 0xFFFF : 0xFF)) {
    throw RangeError.range(
      function,
      0,
      config.extendedFunctionIdentifiers ? 0xFFFF : 0xFF,
      'function',
    );
  }
  if (config.channelField && (channel < 0 || channel > 0xFFFF)) {
    throw RangeError.range(channel, 0, 0xFFFF, 'channel');
  }
  final bytes = BytesBuilder();
  if (config.extendedFunctionIdentifiers) {
    bytes.addByte((function >> 8) & 0xFF);
  }
  bytes.addByte(function & 0xFF);
  if (config.channelField) {
    bytes.addByte((channel >> 8) & 0xFF);
    bytes.addByte(channel & 0xFF);
  }
  bytes.add(data);
  return bytes.toBytes();
}