SharedLayoutCell

Struct SharedLayoutCell 

Source
pub struct SharedLayoutCell(/* private fields */);
Expand description

SharedLayout wrapper that explicitly opts into interior mutability.

The v1 events layout is designed for concurrent mutation through atomics and raw pointers. Rust requires such mutation through a shared reference to be mediated by UnsafeCell.

This type is repr(transparent) over the ABI layout, so it can be used over the same mapped bytes as SharedLayout.

Implementations§

Source§

impl SharedLayoutCell

Source

pub fn from_mut(shared: &mut SharedLayout) -> &SharedLayoutCell

Borrow a SharedLayoutCell view over a uniquely-mutable SharedLayout.

Source

pub unsafe fn from_ptr<'a>(ptr: *mut SharedLayout) -> &'a SharedLayoutCell

Borrow a SharedLayoutCell view over a raw pointer.

§Safety

ptr must be valid for reads/writes for the lifetime 'a.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.