all: split reusable components into workspace crates
This commit is contained in:
parent
2a079ed800
commit
657e7ce2f7
225 changed files with 7422 additions and 17602 deletions
16
utils/src/cell_ext.rs
Normal file
16
utils/src/cell_ext.rs
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
use {crate::ptr_ext::PtrExt, std::cell::Cell};
|
||||
|
||||
pub trait CellExt {
|
||||
fn is_some(&self) -> bool;
|
||||
fn is_none(&self) -> bool;
|
||||
}
|
||||
|
||||
impl<T> CellExt for Cell<Option<T>> {
|
||||
fn is_some(&self) -> bool {
|
||||
unsafe { self.as_ptr().deref().is_some() }
|
||||
}
|
||||
|
||||
fn is_none(&self) -> bool {
|
||||
!self.is_some()
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue