dequeue method

WebSocketMessage? dequeue()

Removes and returns the next message from the queue. Returns null if the queue is empty.

Implementation

WebSocketMessage? dequeue() {
  if (_queue.isEmpty) {
    return null;
  }

  final message = _queue.removeAt(0);

  // Remove message ID from deduplication set
  if (enableDeduplication) {
    _messageIds.remove(message.id);
  }

  return message;
}