Skip to main content

Module serde_utils

Module serde_utils 

Source
Expand description

Утилиты для сериализации / десериализации

При передаче данных по сети или сохранении в файловой системе требуется производить операцию сериализации и десериализации:

– сериализация - процесс преобразования данных в формат, который может быть передан по сети или сохранен в файловой системе;

– десериализация - процесс восстановления данных из формата, который был использован для их передачи или сохранения. В таблице приведены поддерживаемые в данный момент форматы сериализации.

НазваниеОписание
CBORКомпактный двоичный формат сериализации данных. Принят как стандарт IETF RFC 8949. Спецификация формата. Примеры использования: cmp_mqtt_client - обмен данными между брокером и MQTT-клиентами; cmp_webscoket_server, cmp_webscoket_client - обмен между клиентами и сервером.
JSONСтандартный текстовый формат для обмена данными между программами и системами. Спецификация формата. Примеры использования: cmp_http_server - предоставление данных сторонним сервисам; cmp_http_client - получение данных от сторонних сервисов; cmp_http_server + cmp_http_client - обмен данными между сервисами.
MessagePackКомпактный двоичный формат сериализации данных. Спецификация формата. Применение аналогично CBOR.
PostcardДвоичный формат, может работать на устройствах с ограниченными ресурсами, например микроконтроллеры. Спецификация формата. Примеры использования: cmp_esp_nvs - хранение данных в энергонезависимой памяти ESP32.
TOMLПростой и лаконичный текстовый формат. Спецификация формата Примеры использования: cmp_filesystem - хранение настроек приложения; cmp_esp_i2c_master + cmp_esp_i2c_slave - обмен данными между ESP32 по шине I2C.

В качестве примеров в таблице приведены наиболее типовые применения. В любом из указанных компонентов можно использовать любой из перечисленных форматов сериализации и десериализации.

Structs§

SerdeAlg
Алгоритм сериализации / десериализации

Enums§

Error
SerdeAlgKind
Формат сериализации / десериализации