refactor(core): move to qmetaobject-rs

This commit is contained in:
uncor3
2026-05-10 17:54:25 +00:00
parent 9af7f8a9f4
commit 0f1d40de95
204 changed files with 5191 additions and 32701 deletions
+12
View File
@@ -0,0 +1,12 @@
[package]
name = "macros"
version = "0.1.0"
edition = "2024"
[lib]
proc-macro = true
[dependencies]
syn = { version = "2", features = ["full"] }
quote = "1"
proc-macro2 = "1"
+25
View File
@@ -0,0 +1,25 @@
use proc_macro::TokenStream;
use quote::quote;
use syn::{DeriveInput, parse_macro_input};
#[proc_macro_derive(QtThreading)]
pub fn derive_qt_threading(input: TokenStream) -> TokenStream {
let input = parse_macro_input!(input as DeriveInput);
let name = input.ident;
let generics = input.generics;
let (impl_generics, ty_generics, where_clause) = generics.split_for_impl();
let expanded = quote! {
impl #impl_generics crate::qt_threading::QtThreading for #name #ty_generics #where_clause {
fn qt_thread(&self) -> crate::qt_threading::QtThread<Self>
where
Self: Sized,
{
crate::qt_threading::QtThread::new(self)
}
}
};
TokenStream::from(expanded)
}