#[flags]Expand description
Attribute macro for defining flags using the bitflags crate.
This macro will also define a GFlags::type_ function and
the glib::Value traits.
The expected GType name has to be passed as macro attribute.
The name and nick of each flag can also be optionally defined.
Default name is the flag identifier in CamelCase and default nick
is the identifier in kebab-case.
Combined flags should not be registered with the GType system
and so needs to be tagged with the #[flags_value(skip)] attribute.
Example
use glib::prelude::*;
use glib::subclass::prelude::*;
#[glib::flags(name = "MyFlags")]
enum MyFlags {
#[flags_value(name = "Flag A", nick = "nick-a")]
A = 0b00000001,
#[flags_value(name = "Flag B")]
B = 0b00000010,
#[flags_value(skip)]
AB = Self::A.bits() | Self::B.bits(),
C = 0b00000100,
}