mirror of
https://github.com/github/codeql.git
synced 2025-12-17 01:03:14 +01:00
32 lines
885 B
C++
32 lines
885 B
C++
//This switch statement has long case statements, and can become difficult to
|
|
//read as the processing for each message type becomes more complex
|
|
switch (message_type) {
|
|
case CONNECT:
|
|
_state = CONNECTING;
|
|
int message_id = message_get_id(message);
|
|
int source = connect_get_source(message);
|
|
//More code here...
|
|
send(connect_response);
|
|
break;
|
|
case DISCONNECT:
|
|
_state = DISCONNECTING;
|
|
int message_id = message_get_id(message);
|
|
int source = disconnect_get_source(message);
|
|
//More code here...
|
|
send(disconnect_response);
|
|
break;
|
|
default:
|
|
log("Invalid message, id : %d", message_get_id(message));
|
|
}
|
|
|
|
//This is better, as each case is split out to a separate function
|
|
switch (packet_type) {
|
|
case STREAM:
|
|
process_stream_packet(packet);
|
|
break;
|
|
case DATAGRAM:
|
|
process_datagram_packet(packet);
|
|
break;
|
|
default:
|
|
log("Invalid packet type: %d", packet_type);
|
|
} |