pub struct SizedSequence<T, S, F>(pub F, pub T)
where
T: IntoIterator,
T::Item: WriteInto,
T::IntoIter: ExactSizeIterator,
S: WriteInto,
F: FnOnce(usize) -> S;
Expand description
Used to write values from IntoIterator
with known size.
§Example
use write_into::{BigEndian, SizedSequence, write_into};
let mut buffer = Vec::new();
let written = write_into(&mut buffer, SizedSequence(|size| BigEndian(size as u16), &[
BigEndian(0xAABBu16),
BigEndian(0xCCDDu16),
])).unwrap();
assert_eq!(written, 2);
assert_eq!(&buffer, &[0x00, 0x02, 0xAA, 0xBB, 0xCC, 0xDD]);
Tuple Fields§
§0: F
§1: T
Trait Implementations§
Source§impl<T, S, F> WriteInto for &SizedSequence<T, S, F>where
T: Copy + IntoIterator,
T::Item: WriteInto,
T::IntoIter: ExactSizeIterator,
S: WriteInto,
F: Copy + FnOnce(usize) -> S,
Returns how many items was written.
impl<T, S, F> WriteInto for &SizedSequence<T, S, F>where
T: Copy + IntoIterator,
T::Item: WriteInto,
T::IntoIter: ExactSizeIterator,
S: WriteInto,
F: Copy + FnOnce(usize) -> S,
Returns how many items was written.
Source§impl<T, S, F> WriteInto for SizedSequence<T, S, F>where
T: IntoIterator,
T::Item: WriteInto,
T::IntoIter: ExactSizeIterator,
S: WriteInto,
F: FnOnce(usize) -> S,
Returns how many items was written.
impl<T, S, F> WriteInto for SizedSequence<T, S, F>where
T: IntoIterator,
T::Item: WriteInto,
T::IntoIter: ExactSizeIterator,
S: WriteInto,
F: FnOnce(usize) -> S,
Returns how many items was written.
Auto Trait Implementations§
impl<T, S, F> Freeze for SizedSequence<T, S, F>
impl<T, S, F> RefUnwindSafe for SizedSequence<T, S, F>where
F: RefUnwindSafe,
T: RefUnwindSafe,
impl<T, S, F> Send for SizedSequence<T, S, F>
impl<T, S, F> Sync for SizedSequence<T, S, F>
impl<T, S, F> Unpin for SizedSequence<T, S, F>
impl<T, S, F> UnwindSafe for SizedSequence<T, S, F>where
F: UnwindSafe,
T: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more