Форматирование данных
Благодаря использованию unpack, функции для распаковки пакетов в зависимости от их типа стали выглядеть гораздо проще:
Перед тем как вызывать unpack_type2, мы должны сначала убедиться, что имеется пакет именно 2-го типа; распознаванием типа пакетов занимается цикл получателя, примерно такой:
Подобный стиль описания функций довольно размашист. Можно более компактно определить таблицу указателей на распаковывающие функции, причем номер в таблице будет типом пакета: