| Crates.io | hc-homie5-macros |
| lib.rs | hc-homie5-macros |
| version | 0.1.1 |
| created_at | 2025-02-08 19:03:48.461561+00 |
| updated_at | 2025-02-08 19:06:31.883268+00 |
| description | Helper crate for hc-homie5 to implement procedural macros for homie device creation. |
| homepage | |
| repository | https://github.com/homie-homecontrol/hc-homie5-macros |
| max_upload_size | |
| id | 1548311 |
| size | 9,877 |
hc-homie5-proc is a helper crate for hc-homie5 that provides procedural macros to simplify the creation of Homie-compliant devices in Rust.
This crate offers a procedural macro, homie_device, which automatically adds the necessary fields and implements the HomieDeviceCore trait for structs representing Homie devices.
You will most likely never use this create directly. It will be installed alongside hc-homie5 and reexported from there.
use hc_homie5_proc::homie_device;
use hc_homie5::{HomieDeviceCore, HomieMQTTClient};
use homie5::{
device_description::HomieDeviceDescription, Homie5DeviceProtocol, HomieDeviceStatus,
HomieDomain, HomieID, DeviceRef,
};
#[homie_device]
pub struct MyDevice {
some_field: String,
}
Applying #[homie_device] to a struct:
device_ref: DeviceRefstatus: HomieDeviceStatusdevice_desc: HomieDeviceDescriptionhomie_proto: Homie5DeviceProtocolhomie_client: HomieMQTTClientHomieDeviceCore trait for the struct with default implementations for required methods.hc-homie5 for seamless MQTT-based home automation device creation.This project is licensed under the MIT License.