When using like this
#[ferment_macro::export] pub trait TransportClient: Send + Sized { type Error: CanRetry + Send; fn with_uri(uri: Uri) -> Self; }
It creates vtable like this:
pub struct TransportClient_VTable { pub with_uri: unsafe extern "C" fn(uri: *mut crate::fermented::types::asyn::query::Uri) -> *mut crate::fermented::types::asyn::query::Self, }
When using like this
#[ferment_macro::export] pub trait TransportClient: Send + Sized { type Error: CanRetry + Send; fn with_uri(uri: Uri) -> Self; }It creates vtable like this:
pub struct TransportClient_VTable { pub with_uri: unsafe extern "C" fn(uri: *mut crate::fermented::types::asyn::query::Uri) -> *mut crate::fermented::types::asyn::query::Self, }