Source code

Revision control

Copy as Markdown

Other Tools

---
source: macro/src/lib.rs
expression: "pretty_print_code(gen_bridge(parse_quote!\n{\n mod ffi\n {\n #[diplomat::opaque] #[cfg(feature = \"foo\")] struct Foo {}\n #[cfg(feature = \"foo\")] impl Foo\n { pub fn bar(s: u8) { unimplemented!() } }\n }\n}).to_token_stream())"
---
mod ffi {
#[cfg(feature = "foo")]
struct Foo {}
#[cfg(feature = "foo")]
impl Foo {
pub fn bar(s: u8) {
unimplemented!()
}
}
use diplomat_runtime::*;
use core::ffi::c_void;
#[no_mangle]
#[cfg(feature = "foo")]
extern "C" fn Foo_bar(s: u8) {
Foo::bar(s)
}
#[no_mangle]
#[cfg(feature = "foo")]
extern "C" fn Foo_destroy(this: Box<Foo>) {}
}