pub struct AeronSubscribable { /* private fields */ }Implementations§
Source§impl AeronSubscribable
impl AeronSubscribable
pub fn new( correlation_id: i64, length: usize, capacity: usize, array: &AeronTetherablePosition, inactive_count: usize, add_position_hook_func: Option<unsafe extern "C" fn(clientd: *mut c_void, value_addr: *mut i64)>, remove_position_hook_func: Option<unsafe extern "C" fn(clientd: *mut c_void, value_addr: *mut i64)>, clientd: *mut c_void, ) -> 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 correlation_id(&self) -> i64
pub fn length(&self) -> usize
pub fn capacity(&self) -> usize
pub fn array(&self) -> AeronTetherablePosition
pub fn inactive_count(&self) -> usize
pub fn add_position_hook_func( &self, ) -> Option<unsafe extern "C" fn(clientd: *mut c_void, value_addr: *mut i64)>
pub fn remove_position_hook_func( &self, ) -> Option<unsafe extern "C" fn(clientd: *mut c_void, value_addr: *mut i64)>
pub fn clientd(&self) -> *mut c_void
pub fn aeron_driver_subscribable_state( &self, tetherable_position: &AeronTetherablePosition, state: aeron_subscription_tether_state_t, now_ns: i64, stream_id: i32, session_id: i32, log_func: aeron_untethered_subscription_state_change_func_t, )
pub fn aeron_driver_subscribable_working_position_count(&self) -> usize
pub fn aeron_driver_subscribable_has_working_positions(&self) -> bool
pub fn aeron_driver_subscribable_remove_position(&self, counter_id: i32)
pub fn get_inner(&self) -> *mut aeron_subscribable_t
Sourcepub unsafe fn get_inner_mut(&self) -> &mut aeron_subscribable_t
pub unsafe fn get_inner_mut(&self) -> &mut aeron_subscribable_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_subscribable_t
Source§impl AeronSubscribable
impl AeronSubscribable
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 AeronSubscribable
impl Clone for AeronSubscribable
Source§fn clone(&self) -> AeronSubscribable
fn clone(&self) -> AeronSubscribable
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AeronSubscribable
impl Debug for AeronSubscribable
Source§impl Default for AeronSubscribable
This will create an instance where the struct is zeroed, use with care
impl Default for AeronSubscribable
This will create an instance where the struct is zeroed, use with care