mirror of
https://codeberg.org/icewind/bitbuffer.git
synced 2026-06-04 09:04:05 +02:00
start of BitWrite derive macro
This commit is contained in:
parent
e43b0b6bb2
commit
ab86b164aa
7 changed files with 653 additions and 39 deletions
39
bitbuffer_derive/tests/write_test.rs
Normal file
39
bitbuffer_derive/tests/write_test.rs
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
#![allow(dead_code)]
|
||||
#![allow(unreachable_patterns)]
|
||||
|
||||
use bitbuffer::{
|
||||
bit_size_of, bit_size_of_sized, BigEndian, BitReadBuffer, BitReadStream, BitWrite, Endianness,
|
||||
LittleEndian,
|
||||
};
|
||||
|
||||
#[derive(BitWrite)]
|
||||
struct TestStruct {
|
||||
foo: u8,
|
||||
str: String,
|
||||
#[size = 2]
|
||||
truncated: String,
|
||||
bar: u16,
|
||||
float: f32,
|
||||
#[size = 3]
|
||||
asd: u8,
|
||||
#[size = "asd"]
|
||||
previous_field: u8,
|
||||
}
|
||||
|
||||
#[derive(BitWrite)]
|
||||
#[discriminant_bits = 2]
|
||||
enum TestBareEnum {
|
||||
Foo,
|
||||
Bar,
|
||||
Asd = 3,
|
||||
}
|
||||
|
||||
#[derive(BitWrite)]
|
||||
#[discriminant_bits = 2]
|
||||
enum TestUnnamedFieldEnum {
|
||||
#[size = 5]
|
||||
Foo(i8),
|
||||
Bar(bool),
|
||||
#[discriminant = 3]
|
||||
Asd(u8),
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue