ohos_sys/
lib.rs

1//! Ohos-sys
2//!
3//! This crate provides Raw FFI bindings to the native API of OpenHarmonyOS (`target_env = "ohos"`).
4//! Each module corresponds to one OpenHarmony API feature, and is gated behind a cargo feature.
5//! If you are an application developer, you probably do not want to use this crate directly,
6//! and instead want to use a higher-level API built on top of this crate.
7//!
8//! Note: There are currently still quite a few missing bindings, which will slowly be added.
9//!
10//! ## Feature flags
11#![cfg_attr(
12    feature = "document-features",
13    cfg_attr(doc, doc = ::document_features::document_features!())
14)]
15#![cfg_attr(docsrs, feature(doc_cfg))]
16
17#[cfg(feature = "arkui")]
18#[cfg_attr(docsrs, doc(cfg(feature = "arkui")))]
19pub use arkui_sys as arkui;
20
21#[cfg(feature = "deviceinfo")]
22#[cfg_attr(docsrs, doc(cfg(feature = "deviceinfo")))]
23pub use ohos_deviceinfo_sys as deviceinfo;
24
25#[cfg(feature = "drawing")]
26#[cfg_attr(docsrs, doc(cfg(feature = "drawing")))]
27pub use ohos_drawing_sys as drawing;
28
29#[cfg(feature = "hilog")]
30#[cfg_attr(docsrs, doc(cfg(feature = "hilog")))]
31pub use hilog_sys as hilog;
32
33#[cfg(feature = "hitrace")]
34#[cfg_attr(docsrs, doc(cfg(feature = "hitrace")))]
35pub use hitrace_sys as hitrace;
36
37#[cfg(feature = "napi")]
38#[cfg_attr(docsrs, doc(cfg(feature = "napi")))]
39pub mod napi;
40
41#[cfg(feature = "native_buffer")]
42#[cfg_attr(docsrs, doc(cfg(feature = "native_buffer")))]
43pub mod native_buffer;
44
45#[cfg(feature = "native_image")]
46#[cfg_attr(docsrs, doc(cfg(feature = "native_image")))]
47pub mod native_image;
48
49#[cfg(feature = "native_window")]
50#[cfg_attr(docsrs, doc(cfg(feature = "native_window")))]
51pub mod native_window;
52
53// It's just one function, so we don't feature guard this.
54pub mod syscap;
55
56#[cfg(feature = "vsync")]
57#[cfg_attr(docsrs, doc(cfg(feature = "vsync")))]
58pub use ohos_vsync_sys as vsync;
59
60#[cfg(feature = "xcomponent")]
61#[cfg_attr(docsrs, doc(cfg(feature = "xcomponent")))]
62pub use xcomponent_sys as xcomponent;