Expand description
Transactional, bite-sized FIFO queue consumption.
A Bite temporarily removes a prefix from a BiteQueue. Committing
keeps it removed; every other exit path restores it in original order.
use que_luyo::BiteQueue;
let mut queue = BiteQueue::from_iter([1, 2, 3]);
{
let bite = queue.bite(2)?;
assert_eq!(bite.iter().copied().collect::<Vec<_>>(), [1, 2]);
}
assert_eq!(queue.iter().copied().collect::<Vec<_>>(), [1, 2, 3]);
let eaten = queue.bite(2)?.commit();
assert_eq!(eaten, [1, 2]);Structs§
- Bite
- A borrowed, transactional prefix of a
BiteQueue. - Bite
Queue - A FIFO queue that lends transactional batches.
Enums§
- Bite
Error - Invalid bite request.