mirror of
https://codeberg.org/icewind/bitbuffer.git
synced 2026-06-03 16:44:06 +02:00
impl ReadSized for Option<T>
This commit is contained in:
parent
92b5763aea
commit
29ca7e359e
1 changed files with 10 additions and 0 deletions
10
src/read.rs
10
src/read.rs
|
|
@ -246,6 +246,16 @@ impl<E: Endianness, T: BitRead<E>> BitRead<E> for Option<T> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl<E: Endianness, T: BitReadSized<E>> BitReadSized<E> for Option<T> {
|
||||||
|
fn read(stream: &mut BitStream<E>, size: usize) -> Result<Self> {
|
||||||
|
if stream.read()? {
|
||||||
|
Ok(Some(stream.read_sized(size)?))
|
||||||
|
} else {
|
||||||
|
Ok(None)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl<E: Endianness> BitReadSized<E> for BitStream<E> {
|
impl<E: Endianness> BitReadSized<E> for BitStream<E> {
|
||||||
#[inline(always)]
|
#[inline(always)]
|
||||||
fn read(stream: &mut BitStream<E>, size: usize) -> Result<Self> {
|
fn read(stream: &mut BitStream<E>, size: usize) -> Result<Self> {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue