|
ESPHome 2026.10.2
|
Data Structures | |
| class | JsonArena |
| Bump allocator over a fixed buffer for a document built and serialized in one scope. More... | |
| class | JsonBuilder |
| Builder class for creating JSON documents without lambdas. More... | |
| class | SerializationBuffer |
| Buffer for JSON serialization that uses stack allocation for small payloads. More... | |
| struct | SpiRamAllocator |
Typedefs | |
| using | json_parse_t = std::function<bool(JsonObject)> |
| Callback function typedef for parsing JsonObjects. | |
| using | json_build_t = std::function<void(JsonObject)> |
| Callback function typedef for building JsonObjects. | |
Functions | |
| SerializationBuffer | build_json (const json_build_t &f) |
| Build a JSON string with the provided json build function. | |
| bool | parse_json (const std::string &data, const json_parse_t &f) |
| Parse a JSON string and run the provided json parse function if it's valid. | |
| bool | parse_json (const uint8_t *data, size_t len, const json_parse_t &f) |
| Parse JSON from raw bytes and run the provided json parse function if it's valid. | |
| JsonDocument | parse_json (const uint8_t *data, size_t len) |
| Parse a JSON string and return the root JsonDocument (or an unbound object on error) | |
| ArduinoJson::Allocator * | heap_json_allocator () |
| The allocator a JsonBuilder uses by default (PSRAM first when available) | |
| JsonDocument | parse_json (const std::string &data) |
| Parse a JSON string and return the root JsonDocument (or an unbound object on error) | |
Variables | |
| constexpr size_t | JSON_POOL_BYTES = ARDUINOJSON_POOL_CAPACITY * sizeof(ArduinoJson::detail::VariantData) |
| Size of one ArduinoJson slot pool, the first allocation every document makes (1 KB on 32 bit targets) | |
| constexpr size_t | JSON_ARENA_SIZE = JSON_POOL_BYTES + 1152 |
| One pool plus room for copied string nodes; a 40 option select with linked options fits. | |
| using esphome::json::json_build_t = std::function<void(JsonObject)> |
Callback function typedef for building JsonObjects.
Definition at line 152 of file json_util.h.
| using esphome::json::json_parse_t = std::function<bool(JsonObject)> |
Callback function typedef for parsing JsonObjects.
Definition at line 149 of file json_util.h.
| SerializationBuffer esphome::json::build_json | ( | const json_build_t & | f | ) |
Build a JSON string with the provided json build function.
Returns SerializationBuffer for stack-first allocation; implicitly converts to std::string.
Definition at line 19 of file json_util.cpp.
| ArduinoJson::Allocator * esphome::json::heap_json_allocator | ( | ) |
The allocator a JsonBuilder uses by default (PSRAM first when available)
Definition at line 72 of file json_util.cpp.
|
inline |
Parse a JSON string and return the root JsonDocument (or an unbound object on error)
Definition at line 166 of file json_util.h.
| bool esphome::json::parse_json | ( | const std::string & | data, |
| const json_parse_t & | f ) |
Parse a JSON string and run the provided json parse function if it's valid.
Definition at line 28 of file json_util.cpp.
| JsonDocument esphome::json::parse_json | ( | const uint8_t * | data, |
| size_t | len ) |
Parse a JSON string and return the root JsonDocument (or an unbound object on error)
Definition at line 42 of file json_util.cpp.
| bool esphome::json::parse_json | ( | const uint8_t * | data, |
| size_t | len, | ||
| const json_parse_t & | f ) |
Parse JSON from raw bytes and run the provided json parse function if it's valid.
Definition at line 33 of file json_util.cpp.
|
constexpr |
One pool plus room for copied string nodes; a 40 option select with linked options fits.
Definition at line 177 of file json_util.h.
|
constexpr |
Size of one ArduinoJson slot pool, the first allocation every document makes (1 KB on 32 bit targets)
Definition at line 175 of file json_util.h.