46 lines
603 B
Rust
46 lines
603 B
Rust
/// default enum values are continuos i32s start from 0
|
|
#[napi]
|
|
pub enum Kind {
|
|
/// Barks
|
|
Dog,
|
|
/// Kills birds
|
|
Cat,
|
|
/// Tasty
|
|
Duck,
|
|
}
|
|
|
|
#[napi]
|
|
pub enum Empty {}
|
|
|
|
#[napi(string_enum)]
|
|
pub enum Status {
|
|
Pristine,
|
|
Loading,
|
|
Ready,
|
|
}
|
|
|
|
/// You could break the step and for an new continuous value.
|
|
#[napi]
|
|
pub enum CustomNumEnum {
|
|
One = 1,
|
|
Two,
|
|
Three = 3,
|
|
Four,
|
|
#[doc(hidden)]
|
|
Six = 6,
|
|
Eight = 8,
|
|
Nine, // would be 9
|
|
Ten, // 10
|
|
}
|
|
|
|
#[napi]
|
|
fn enum_to_i32(e: CustomNumEnum) -> i32 {
|
|
e as i32
|
|
}
|
|
|
|
#[napi(skip_typescript)]
|
|
pub enum SkippedEnums {
|
|
One = 1,
|
|
Two,
|
|
Tree,
|
|
}
|