J. Nick Koston 05990474b0 [api] Inline force-variant ProtoSize calc methods for BLE proxy hot path
Force-inline calc_uint64_force, calc_sint32_force, calc_length_force,
and calc_message_force so the varint fast path (value < 128) is
expanded at each call site instead of going through a function call.

These are the size-calculation methods used by BLE proxy messages
(BluetoothLERawAdvertisement, BluetoothGATTService/Characteristic/
Descriptor) which are called 12x per advertisement batch in the
hot path.

Benchmarked on ESP32 with 12-advertisement batches (10k iterations):
- calculate_size: 10381 -> 9718 ns/op (6.4% faster)
- Full calc+encode: 49886 -> 47599 ns/op (4.6% faster)

Flash cost: +40 bytes (ESP32 IDF), +64 bytes (ESP8266).
2026-03-13 12:18:03 -10:00
2023-06-12 17:00:34 +12:00
2022-09-06 15:48:01 +12:00
2025-12-21 09:26:03 -05:00
2024-03-28 10:20:51 +13:00
2025-07-17 22:40:28 +12:00
2025-12-08 14:37:45 -05:00
2026-03-12 07:34:53 +13:00
2025-07-17 22:40:28 +12:00
2025-12-05 08:48:04 -05:00
S
Description
ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
Readme Multiple Licenses
609 MiB
Languages
C++ 55.7%
Python 43.7%
C 0.3%
JavaScript 0.2%