Описание тега scodec

NoneScodec - это чистая функциональная библиотека Scala, которая позволяет кодировать / декодировать двоичные данные.

Scodec - это набор библиотек комбинаторов Scala для работы с двоичными данными. Поддержка варьируется от простых, эффективных структур данных для работы с битами и байтами до потокового кодирования и декодирования.

Эта библиотека фокусируется на контракте-первом и чистого функционального кодирования и декодирования двоичных данных. Учитываются следующие конструктивные ограничения:

  • Двоичная структура должна отражать определения протокола и быть очевидной при случайном чтении.
  • Сопоставление двоичных структур с типами следует проверять статически.
  • Кодирование и декодирование должны быть чисто функциональными
  • Сбои в кодировании и декодировании должны вызывать описательные ошибки. Плагин компилятора не следует использовать

В результате библиотека реализована как DSL на основе комбинатора. Производительность учитывается, но уступает указанным выше конструктивным ограничениям.

Хорошее место для начала использования - это посмотреть на уже существующие кодеки и на то, как их можно комбинировать, проверив доступные операторы.

Ссылки: http://scodec.org/ и github.