pub struct AeronDeque { /* private fields */ }
Implementations§
Source§impl AeronDeque
impl AeronDeque
pub fn new( data: *mut u8, element_count: usize, element_size: usize, first_element: usize, last_element: usize, ) -> Result<Self, AeronCError>
Sourcepub fn new_zeroed() -> Result<Self, AeronCError>
pub fn new_zeroed() -> Result<Self, AeronCError>
creates zeroed struct where the underlying c struct is on the heap
pub fn data(&self) -> *mut u8
pub fn element_count(&self) -> usize
pub fn element_size(&self) -> usize
pub fn first_element(&self) -> usize
pub fn last_element(&self) -> usize
pub fn init( &self, initial_element_count: usize, element_size: usize, ) -> Result<i32, AeronCError>
pub fn close(&self)
Sourcepub fn add_last(&self, value: *mut c_void) -> Result<i32, AeronCError>
pub fn add_last(&self, value: *mut c_void) -> Result<i32, AeronCError>
Add value into the deque as the last element. Will memcpy into the deque from the void pointer provided using the specified element size. May need to allocate in order to increase the size of the dequeue.
Errors: ENOMEM if growing the array fails.
§Parameters
-
deque
to add the value too. -
value
value to be added.
§Return
0 on success, -1 on failure.
pub fn remove_first(&self, value: *mut c_void) -> Result<i32, AeronCError>
pub fn get_inner(&self) -> *mut aeron_deque_t
Source§impl AeronDeque
impl AeronDeque
Sourcepub fn clone_struct(&self) -> Self
pub fn clone_struct(&self) -> Self
Regular clone just increases the reference count of underlying count.
clone_struct
shallow copies the content of the underlying struct on heap.
NOTE: if the struct has references to other structs these will not be copied
Must be only used on structs which has no init/clean up methods. So its danagerous to use with Aeron/AeronContext/AeronPublication/AeronSubscription More intended for AeronArchiveRecordingDescriptor
Trait Implementations§
Source§impl Clone for AeronDeque
impl Clone for AeronDeque
Source§fn clone(&self) -> AeronDeque
fn clone(&self) -> AeronDeque
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for AeronDeque
impl Debug for AeronDeque
Source§impl Default for AeronDeque
impl Default for AeronDeque
This will create an instance where the struct is zeroed, use with care