stabilize const_cell
This commit is contained in:
parent
81d8edc200
commit
e31bb45e47
1 changed files with 5 additions and 5 deletions
|
|
@ -495,7 +495,7 @@ impl<T> Cell<T> {
|
|||
/// ```
|
||||
#[inline]
|
||||
#[stable(feature = "move_cell", since = "1.17.0")]
|
||||
#[rustc_const_unstable(feature = "const_cell", issue = "131283")]
|
||||
#[rustc_const_stable(feature = "const_cell", since = "CURRENT_RUSTC_VERSION")]
|
||||
#[rustc_confusables("swap")]
|
||||
pub const fn replace(&self, val: T) -> T {
|
||||
// SAFETY: This can cause data races if called from a separate thread,
|
||||
|
|
@ -537,7 +537,7 @@ impl<T: Copy> Cell<T> {
|
|||
/// ```
|
||||
#[inline]
|
||||
#[stable(feature = "rust1", since = "1.0.0")]
|
||||
#[rustc_const_unstable(feature = "const_cell", issue = "131283")]
|
||||
#[rustc_const_stable(feature = "const_cell", since = "CURRENT_RUSTC_VERSION")]
|
||||
pub const fn get(&self) -> T {
|
||||
// SAFETY: This can cause data races if called from a separate thread,
|
||||
// but `Cell` is `!Sync` so this won't happen.
|
||||
|
|
@ -617,7 +617,7 @@ impl<T: ?Sized> Cell<T> {
|
|||
/// ```
|
||||
#[inline]
|
||||
#[stable(feature = "cell_get_mut", since = "1.11.0")]
|
||||
#[rustc_const_unstable(feature = "const_cell", issue = "131283")]
|
||||
#[rustc_const_stable(feature = "const_cell", since = "CURRENT_RUSTC_VERSION")]
|
||||
pub const fn get_mut(&mut self) -> &mut T {
|
||||
self.value.get_mut()
|
||||
}
|
||||
|
|
@ -637,7 +637,7 @@ impl<T: ?Sized> Cell<T> {
|
|||
/// ```
|
||||
#[inline]
|
||||
#[stable(feature = "as_cell", since = "1.37.0")]
|
||||
#[rustc_const_unstable(feature = "const_cell", issue = "131283")]
|
||||
#[rustc_const_stable(feature = "const_cell", since = "CURRENT_RUSTC_VERSION")]
|
||||
pub const fn from_mut(t: &mut T) -> &Cell<T> {
|
||||
// SAFETY: `&mut` ensures unique access.
|
||||
unsafe { &*(t as *mut T as *const Cell<T>) }
|
||||
|
|
@ -695,7 +695,7 @@ impl<T> Cell<[T]> {
|
|||
/// assert_eq!(slice_cell.len(), 3);
|
||||
/// ```
|
||||
#[stable(feature = "as_cell", since = "1.37.0")]
|
||||
#[rustc_const_unstable(feature = "const_cell", issue = "131283")]
|
||||
#[rustc_const_stable(feature = "const_cell", since = "CURRENT_RUSTC_VERSION")]
|
||||
pub const fn as_slice_of_cells(&self) -> &[Cell<T>] {
|
||||
// SAFETY: `Cell<T>` has the same memory layout as `T`.
|
||||
unsafe { &*(self as *const Cell<[T]> as *const [Cell<T>]) }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue