#[typeshare]
Expand description
Marks a type as a type shared across the FFI boundary using typeshare.
The typeshare
program will process all the types with this attribute. It will ignore all types
that do not have this attribute.
§Example
ⓘ
use typeshare::typeshare;
#[typeshare]
pub struct Person {
name: String,
email: String,
}
If the file above is src/person.rs
, then typeshare --lang=typescript src/person.rs
would
generate the typescript bindings for the Person
type.
§Ignoring enum variants
If you don’t want to typeshare a certain enum variant, just put a #[typeshare(skip)]
attribute on
that variant.
ⓘ
use typeshare::typeshare;
#[typeshare]
pub enum SomeEnum {
A,
#[typeshare(skip)]
B, // <- this variant will not be included in the typeshared file(s)
C,
}