TL;DR вышесказанного:
- Статическая таблица по индексу 1-61;
- Динамическая таблица, начиная от индекса 62 включительно;
- Когда в динамическую таблицу попадает новая пара, она занимает индекс 62, остальные смещаются;
- Если добавление новой пары превышает максимальный размер таблицы, самые старые вхождения дропаются;
- Опасно дропать сразу, иначе может произойти жопа;
- Гигантская пара размером больше максимального размера просто очистит таблицу;
- Размер таблицы - сумма длин всех вхождений;
- Длина вхождения - длина ключа, значения и 32. На 32 всё ещё злюсь, из-за них тесты ебливей писать;
А вот что забыл упомянуть, так это опциональное кодирование Хаффманом для литералов. Что ключи, что значения могут быть им закодированы. Хаффман используется со статической таблицей кодов, также представленной в RFC. Естественно, длина учитывает только декодированное ключ-значение.
Post #611
189
- 👍 1