#[repr(transparent)]
pub struct TLCell<Q, T: ?Sized> { /* private fields */ }
Available on crate feature std only.
Expand description

Cell whose contents is owned (for borrowing purposes) by a TLCellOwner.

To borrow from this cell, use the borrowing calls on the TLCellOwner instance that shares the same marker type. Since there may be another indistinguishable TLCellOwner in another thread, Sync is not supported for this type. However it is possible to send the cell to another thread, which then allows its contents to be borrowed using the owner in that thread.

See also crate documentation.

Implementations

Create a new TLCell owned for borrowing purposes by the TLCellOwner derived from the same marker type Q.

Destroy the cell and return the contained value

Safety: Since this consumes the cell, there can be no other references to the cell or the data at this point.

Borrow contents of this cell immutably (read-only). Many TLCell instances can be borrowed immutably at the same time from the same owner.

Borrow contents of this cell mutably (read-write). Only one TLCell at a time can be borrowed from the owner using this call. The returned reference must go out of scope before another can be borrowed. To mutably borrow from two or three cells at the same time, see TLCellOwner::rw2 or TLCellOwner::rw3.

Returns a mutable reference to the underlying data

Note that this is only useful at the beginning-of-life or end-of-life of the cell when you have exclusive access to it. Normally you’d use TLCell::rw or TLCellOwner::rw to get a mutable reference to the contents of the cell.

Safety: This call borrows TLCell mutably which guarantees that we possess the only reference. This means that there can be no active borrows of other forms, even ones obtained using an immutable reference.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.