Struct core::cell::Cell
[−]
[src]
pub struct Cell<T> { // some fields omitted }
A mutable memory location that admits only Copy
data.
See the module-level documentation for more.
Methods
impl<T: Copy> Cell<T>
const fn new(value: T) -> Cell<T>
Creates a new Cell
containing the given value.
Examples
fn main() { use std::cell::Cell; let c = Cell::new(5); }use std::cell::Cell; let c = Cell::new(5);
fn get(&self) -> T
Returns a copy of the contained value.
Examples
fn main() { use std::cell::Cell; let c = Cell::new(5); let five = c.get(); }use std::cell::Cell; let c = Cell::new(5); let five = c.get();
fn set(&self, value: T)
Sets the contained value.
Examples
fn main() { use std::cell::Cell; let c = Cell::new(5); c.set(10); }use std::cell::Cell; let c = Cell::new(5); c.set(10);
unsafe fn as_unsafe_cell(&self) -> &UnsafeCell<T>
Unstable (
as_unsafe_cell
#27708)Returns a reference to the underlying UnsafeCell
.
Safety
This function is unsafe
because UnsafeCell
's field is public.
Examples
#![feature(as_unsafe_cell)] fn main() { use std::cell::Cell; let c = Cell::new(5); let uc = unsafe { c.as_unsafe_cell() }; }#![feature(as_unsafe_cell)] use std::cell::Cell; let c = Cell::new(5); let uc = unsafe { c.as_unsafe_cell() };