toString method

  1. @override
String toString()
override

A string representation of this object.

Some classes have a default textual representation, often paired with a static parse function (like int.parse). These classes will provide the textual representation as their string representation.

Other classes have no meaningful textual representation that a program will care about. Such classes will typically override toString to provide useful information when inspecting the object, mainly for debugging or logging.

Implementation

@override
String toString() {
  final flagStr = <String>[];
  if (AtemPacketFlags.isReliable(flags)) {
    flagStr.add('RELIABLE');
  }
  if (AtemPacketFlags.isSyn(flags)) {
    flagStr.add('SYN');
  }
  if (AtemPacketFlags.isRetransmission(flags)) {
    flagStr.add('RETRANS');
  }
  if (AtemPacketFlags.isRequestRetransmission(flags)) {
    flagStr.add('REQ_RETRANS');
  }
  if (AtemPacketFlags.isAck(flags)) {
    flagStr.add('ACK');
  }

  return 'AtemPacket(flags: [${flagStr.join(', ')}], '
      'len: ${data?.length ?? 0}, seq: $sequenceNumber, '
      'ack: $acknowledgementNumber, remoteSeq: $remoteSequenceNumber, '
      'session: 0x${session.toRadixString(16).padLeft(4, '0')})';
}