4 releases
0.1.3 | Jun 22, 2024 |
---|---|
0.1.2 | May 14, 2024 |
0.1.1 | Apr 2, 2024 |
0.1.0 | Jan 3, 2024 |
#361 in Procedural macros
752 downloads per month
29KB
672 lines
Bool To Bitflags
A library to compact multiple bools into a single bitflags field automatically with getters and setters.
See the documentation on docs.rs.
lib.rs
:
bool-to-bitflags
A struct attribute macro to pack structs with multiple boolean fields into efficent byte packing.
This macro will make struct fields of type bool
and Option<bool>
be packed into a field called __generated_flags
.
This field is responsible for storing the packed bits, and should not be messed with manually, other than to initialize
as all-false with {StructName}GeneratedFlags::empty()
or all-true with {StructName}GeneratedFlags::all()
.
Arguments
Argument Name | Type | Default Value | Description |
---|---|---|---|
getter_prefix |
String |
The prefix before getter names | |
setter_prefix |
String |
set_ |
The prefix before setter names |
private_getters |
bool |
Field Visibility | If true, getters are forced to be crate-private |
private_setters |
bool |
Field Visibility | If true, setters are forced to be crate-private |
document_setters |
bool |
false |
If true, field documentation is used for setters, instead of getters |
owning_setters |
bool |
false |
If true, setters take self and return self instead of taking &mut self |
MSRV
The Minimum Supported Rust Version of this crate is 1.65.
It is considered a breaking change to raise this requirement.
Dependencies
~0.7–1.4MB
~30K SLoC