Struct core::cell::RefCell[src]
pub struct RefCell<T> {
// some fields omitted
}A mutable memory location with dynamically checked borrow rules
Methods
impl<T> RefCell<T>
fn new(value: T) -> RefCell<T>
Create a new RefCell containing value
fn unwrap(self) -> T
Consumes the RefCell, returning the wrapped value.
fn try_borrow<'a>(&'a self) -> Option<Ref<'a, T>>
Attempts to immutably borrow the wrapped value.
The borrow lasts until the returned Ref exits scope. Multiple
immutable borrows can be taken out at the same time.
Returns None if the value is currently mutably borrowed.
fn borrow<'a>(&'a self) -> Ref<'a, T>
Immutably borrows the wrapped value.
The borrow lasts until the returned Ref exits scope. Multiple
immutable borrows can be taken out at the same time.
Failure
Fails if the value is currently mutably borrowed.
fn try_borrow_mut<'a>(&'a self) -> Option<RefMut<'a, T>>
Mutably borrows the wrapped value.
The borrow lasts until the returned RefMut exits scope. The value
cannot be borrowed while this borrow is active.
Returns None if the value is currently borrowed.
fn borrow_mut<'a>(&'a self) -> RefMut<'a, T>
Mutably borrows the wrapped value.
The borrow lasts until the returned RefMut exits scope. The value
cannot be borrowed while this borrow is active.
Failure
Fails if the value is currently borrowed.