Struct cbindgen::EnumConfig [−][src]
pub struct EnumConfig {}Show 14 fields
pub rename_variants: RenameRule, pub add_sentinel: bool, pub prefix_with_name: bool, pub derive_helper_methods: bool, pub derive_const_casts: bool, pub derive_mut_casts: bool, pub cast_assert_name: Option<String>, pub must_use: Option<String>, pub derive_tagged_enum_destructor: bool, pub derive_tagged_enum_copy_constructor: bool, pub derive_tagged_enum_copy_assignment: bool, pub derive_ostream: bool, pub enum_class: bool, pub private_default_tagged_enum_constructor: bool,
Expand description
Settings to apply to generated enums.
Fields
rename_variants: RenameRule
The rename rule to apply to the name of enum variants
add_sentinel: bool
Whether to add a Sentinel
value at the end of every enum
This is useful in Gecko for IPC serialization
prefix_with_name: bool
Whether the enum variants should be prefixed with the enum name
derive_helper_methods: bool
Whether to generate static ::X(..)
constructors and IsX()
methods for tagged enums.
derive_const_casts: bool
Whether to generate AsX() const
methods for tagged enums.
derive_mut_casts: bool
Whether to generate AsX()
methods for tagged enums.
cast_assert_name: Option<String>
The name of the macro to use for derive_{const,mut}casts
. If custom, you’re
responsible to provide the necessary header, otherwise assert
will be
used, and <cassert>
will be included.
must_use: Option<String>
The way to annotation this enum as #[must_use].
derive_tagged_enum_destructor: bool
Whether to generate destructors of tagged enums.
derive_tagged_enum_copy_constructor: bool
Whether to generate copy-constructors of tagged enums.
derive_tagged_enum_copy_assignment: bool
Whether to generate copy-assignment operators of tagged enums.
This is only generated if a copy constructor for the same tagged enum is generated as well.
derive_ostream: bool
Whether to generate a ostream serializer for the struct
enum_class: bool
Declare the enum as an enum class. Only relevant when targeting C++.
private_default_tagged_enum_constructor: bool
Whether to generate empty, private default-constructors for tagged enums.
Trait Implementations
Returns the “default value” for a type. Read more
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations
impl RefUnwindSafe for EnumConfig
impl Send for EnumConfig
impl Sync for EnumConfig
impl Unpin for EnumConfig
impl UnwindSafe for EnumConfig
Blanket Implementations
Mutably borrows from an owned value. Read more