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 ks = keyShareEntry != null
      ? "group=0x${keyShareEntry!.group.toRadixString(16)}, key=${HEX.encode(keyShareEntry!.pub)}"
      : "null";

  final ver = selectedVersion != null
      ? "0x${selectedVersion!.toRadixString(16)}"
      : "null";

  return '''
✅ Parsed ServerHello:
legacy_version: 0x${legacyVersion.toRadixString(16)}
random: ${HEX.encode(random.sublist(0, 8))}...
session_id: ${HEX.encode(sessionId)}
cipher_suite: 0x${cipherSuite.toRadixString(16)}
compression: $compressionMethod
selected_version: $ver
key_share: $ks
''';
}