[−][src]Struct qcell::TCellOwner
Borrowing-owner of zero or more TCell
instances.
See crate documentation.
Methods
impl<Q: 'static> TCellOwner<Q>
[src]
pub fn new() -> Self
[src]
Create the singleton owner instance. There may only be one
instance of this type at any time for each different marker
type Q
. This call panics if another instance is created.
This may be used for creating many TCell
instances.
pub fn cell<T>(&self, value: T) -> TCell<Q, T>
[src]
Create a new cell owned by this owner instance. See also
TCell::new
.
pub fn ro<'a, T>(&'a self, tc: &'a TCell<Q, T>) -> &'a T
[src]
Borrow contents of a TCell
immutably (read-only). Many
TCell
instances can be borrowed immutably at the same time
from the same owner.
pub fn rw<'a, T>(&'a mut self, tc: &'a TCell<Q, T>) -> &'a mut T
[src]
Borrow contents of a TCell
mutably (read-write). Only one
TCell
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.
pub fn rw2<'a, T, U>(
&'a mut self,
tc1: &'a TCell<Q, T>,
tc2: &'a TCell<Q, U>
) -> (&'a mut T, &'a mut U)
[src]
&'a mut self,
tc1: &'a TCell<Q, T>,
tc2: &'a TCell<Q, U>
) -> (&'a mut T, &'a mut U)
Borrow contents of two TCell
instances mutably. Panics if
the two TCell
instances point to the same memory.
pub fn rw3<'a, T, U, V>(
&'a mut self,
tc1: &'a TCell<Q, T>,
tc2: &'a TCell<Q, U>,
tc3: &'a TCell<Q, V>
) -> (&'a mut T, &'a mut U, &'a mut V)
[src]
&'a mut self,
tc1: &'a TCell<Q, T>,
tc2: &'a TCell<Q, U>,
tc3: &'a TCell<Q, V>
) -> (&'a mut T, &'a mut U, &'a mut V)
Borrow contents of three TCell
instances mutably. Panics if
any pair of TCell
instances point to the same memory.
Trait Implementations
impl<Q: 'static> Drop for TCellOwner<Q>
[src]
Auto Trait Implementations
impl<Q> Send for TCellOwner<Q> where
Q: Send,
Q: Send,
impl<Q> Sync for TCellOwner<Q> where
Q: Sync,
Q: Sync,
Blanket Implementations
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,