Struct chunky::Queue [−][src]
pub struct Queue<H: Handler> { /* fields omitted */ }
A FIFO queue which stores heterogeneously sized items
Methods
impl<H: Handler> Queue<H>
[src]
impl<H: Handler> Queue<H>
pub fn new(ident: &Ident, typical_chunk_size: usize) -> Self
[src]
pub fn new(ident: &Ident, typical_chunk_size: usize) -> Self
Create a new queue
pub fn len(&self) -> usize
[src]
pub fn len(&self) -> usize
Number of items in the queue
pub fn is_empty(&self) -> bool
[src]
pub fn is_empty(&self) -> bool
Is the queue empty?
pub unsafe fn enqueue(&mut self, size: usize) -> *mut u8
[src]
pub unsafe fn enqueue(&mut self, size: usize) -> *mut u8
Enqueue an item of a given size. Returns a pointer that the item can be written to.
This is handled like this so items of heterogeneous types can be enqueued.
pub unsafe fn dequeue(&mut self) -> Option<*const u8>
[src]
pub unsafe fn dequeue(&mut self) -> Option<*const u8>
Dequeue an item. Returns a pointer to the item in the queue, unless the queue is empty.
pub unsafe fn drop_old_chunks(&mut self)
[src]
pub unsafe fn drop_old_chunks(&mut self)
Delete chunks which have already been read