9 releases

0.1.5-beta.0 Jun 6, 2025
0.1.4 May 13, 2025
0.1.2 Apr 27, 2025
0.1.0 Mar 21, 2025
0.0.1 Jan 24, 2025

#51 in #open-harmony

Download history 10/week @ 2025-03-12 120/week @ 2025-03-19 15/week @ 2025-03-26 109/week @ 2025-04-02 24/week @ 2025-04-09 3/week @ 2025-04-16 109/week @ 2025-04-23 18/week @ 2025-04-30 252/week @ 2025-05-07 107/week @ 2025-05-14 8/week @ 2025-05-21 18/week @ 2025-05-28 117/week @ 2025-06-04 13/week @ 2025-06-11 27/week @ 2025-06-18 18/week @ 2025-06-25

179 downloads per month
Used in 3 crates (2 directly)

MIT/Apache

6KB
76 lines

openharmony-ability-derive

Introduce

openharmony-ability-derive is a macro crate for the openharmony-ability project. It provides a macro for generating code to accept the OpenHarmony/HarmonyNext ability's lifecycle callbacks.

Install

cargo add openharmony-ability-derive

Example

use openharmony_ability_derive::ability;

#[ability]
fn openharmony_app(app: OpenHarmonyApp) {
    app.run_loop(|types| match types {
        Event::Input(k) => match k {
            InputEvent::TextInputEvent(s) => {
                hilog_info!(format!("ohos-rs macro input_text: {:?}", s).as_str());
            }
            _ => {
                hilog_info!(format!("ohos-rs macro input:").as_str());
            }
        },
        Event::WindowRedraw(_) => {}
        _ => {
            hilog_info!(format!("ohos-rs macro: {:?}", types.as_str()).as_str());
        }
    });
}

Dependencies

~180–600KB
~14K SLoC