pub struct AeronRbDescriptor { /* private fields */ }Implementations§
Source§impl AeronRbDescriptor
impl AeronRbDescriptor
pub fn new( begin_pad: [u8; 128], tail_position: i64, tail_pad: [u8; 120], head_cache_position: i64, head_cache_pad: [u8; 120], head_position: i64, head_pad: [u8; 120], correlation_counter: i64, correlation_counter_pad: [u8; 120], consumer_heartbeat: i64, consumer_heartbeat_pad: [u8; 120], ) -> Result<Self, AeronCError>
Sourcepub fn new_zeroed_on_heap() -> Self
pub fn new_zeroed_on_heap() -> Self
creates zeroed struct where the underlying c struct is on the heap
Sourcepub fn new_zeroed_on_stack() -> Self
pub fn new_zeroed_on_stack() -> Self
creates zeroed struct where the underlying c struct is on the stack (Use with care)
pub fn begin_pad(&self) -> [u8; 128]
pub fn tail_position(&self) -> i64
pub fn tail_pad(&self) -> [u8; 120]
pub fn head_cache_position(&self) -> i64
pub fn head_cache_pad(&self) -> [u8; 120]
pub fn head_position(&self) -> i64
pub fn head_pad(&self) -> [u8; 120]
pub fn correlation_counter(&self) -> i64
pub fn correlation_counter_pad(&self) -> [u8; 120]
pub fn consumer_heartbeat(&self) -> i64
pub fn consumer_heartbeat_pad(&self) -> [u8; 120]
pub fn get_inner(&self) -> *mut aeron_rb_descriptor_t
Sourcepub unsafe fn get_inner_mut(&self) -> &mut aeron_rb_descriptor_t
pub unsafe fn get_inner_mut(&self) -> &mut aeron_rb_descriptor_t
Mutable access to the underlying C struct, minted from &self: nothing
prevents two live &mut at once, so the caller must ensure exclusive
access for the lifetime of the returned reference.
§Safety
No other reference (& or &mut) to the underlying struct may be
alive while the returned &mut is in use.
pub fn get_inner_ref(&self) -> &aeron_rb_descriptor_t
Source§impl AeronRbDescriptor
impl AeronRbDescriptor
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 dangerous to use with Aeron/AeronContext/AeronPublication/AeronSubscription More intended for AeronArchiveRecordingDescriptor (note strings will not work as its a shallow copy)
Trait Implementations§
Source§impl Clone for AeronRbDescriptor
impl Clone for AeronRbDescriptor
Source§fn clone(&self) -> AeronRbDescriptor
fn clone(&self) -> AeronRbDescriptor
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AeronRbDescriptor
impl Debug for AeronRbDescriptor
Source§impl Default for AeronRbDescriptor
This will create an instance where the struct is zeroed, use with care
impl Default for AeronRbDescriptor
This will create an instance where the struct is zeroed, use with care