decodeClosePayload function

({int code, String reason}) decodeClosePayload(
  1. Uint8List payload
)

The inverse of encodeClosePayload.

A payload without a code decodes to 1005 and no reason. The reason must be valid UTF-8.

Implementation

({int code, String reason}) decodeClosePayload(Uint8List payload) {
  if (payload.length < 2) return (code: 1005, reason: '');
  return (
    code: (payload[0] << 8) | payload[1],
    reason: utf8.decode(Uint8List.sublistView(payload, 2)),
  );
}