winrt_gen 0.7.2

Code generation for the winrt crate
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use proc_macro2::TokenStream;
use quote::quote;

pub fn to_object_tokens(from: &TokenStream, constraints: &TokenStream) -> TokenStream {
    quote! {
        impl<#constraints> ::std::convert::From<#from> for ::winrt::Object {
            fn from(value: #from) -> Self {
                unsafe { ::std::mem::transmute(value) }
            }
        }
        impl<#constraints> ::std::convert::From<&#from> for ::winrt::Object {
            fn from(value: &#from) -> Self {
                ::std::convert::From::from(::std::clone::Clone::clone(value))
            }
        }
    }
}