diff --git a/src/datastructures/queue.rs b/src/datastructures/queue.rs index a59a158..09711f4 100644 --- a/src/datastructures/queue.rs +++ b/src/datastructures/queue.rs @@ -256,6 +256,7 @@ impl FilePointer Some(()) } + // 0 ist the next item to be returned pub fn get(self, reader: &impl ReaderTrait, index: u64) -> Option { let mut res = None; self.get_range_inner(reader, index..index + 1, |element| { @@ -264,6 +265,10 @@ impl FilePointer res } + pub fn last(self, reader: &impl ReaderTrait, index: u64) -> Option { + self.get(reader, self.length(reader) - 1) + } + pub fn length(self, reader: &impl ReaderTrait) -> u64 { reader.read(field_ptr!(self, Queue, length)).get() }