Crates.io | maybe-cell |
lib.rs | maybe-cell |
version | 0.1.1 |
source | src |
created_at | 2020-10-15 18:18:36.134092 |
updated_at | 2020-12-21 07:20:01.875164 |
description | An UnsafeCell optionally containing a value, with the state externally managed |
homepage | |
repository | https://github.com/andrewwhitehead/suspend-rs/ |
max_upload_size | |
id | 300105 |
size | 17,031 |
Use a Maybe<T>
in place of an UnsafeCell<MaybeUninit<T>>
for a friendlier API and optional error checking.
MaybeCopy<T>
is provided for types that don't implement Drop
.
This crate provides checked
and unchecked
variants to catch errors when working with the potentially-uninitialized cell. It is recommended to import the checked variant(s) based on a debug flag, for example:
#[cfg(debug_assertions)]
use maybe_cell::checked::Maybe;
#[cfg(not(debug_assertions))]
use maybe_cell::unchecked::Maybe;