qtbridge_runtime/
dynamicmetaobjectdata.rs

1// Copyright (C) 2026 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only
3
4#[cxx::bridge]
5pub mod ffi {
6    unsafe extern "C++" {
7        include!("qtbridge-type-lib/src/generated/core/qmetaobject/cpp/qmetaobject.h");
8        type QMetaObject = qtbridge_type_lib::QMetaObject;
9
10        include!("qtbridge-type-lib/src/generated/core/qobject/cpp/qobject.h");
11        type QObject = qtbridge_type_lib::QObject;
12    }
13
14    unsafe extern "C++" {
15        include!("cpp/dynamicmetaobjectdata.h");
16        type DynamicMetaObjectData;
17
18        #[rust_name = "emit_signal"]
19        fn emitSignal(self: &Self, qobj: &mut QObject, name: &str, argv: &[*const u8]);
20
21        #[rust_name = "get_meta_object"]
22        fn getMetaObject(&self) -> *mut QMetaObject;
23
24        #[rust_name = "set_to_qobject"]
25        fn setToQObject(&self, dst: &mut QObject);
26    }
27}
28
29pub use ffi::DynamicMetaObjectData;