Add tracking issue for sync_unsafe_cell.
This commit is contained in:
parent
750ab0370e
commit
f225808f49
@ -2002,16 +2002,16 @@ impl<T: CoerceUnsized<U>, U> CoerceUnsized<UnsafeCell<U>> for UnsafeCell<T> {}
|
|||||||
/// making this type just as unsafe to use.
|
/// making this type just as unsafe to use.
|
||||||
///
|
///
|
||||||
/// See [`UnsafeCell`] for details.
|
/// See [`UnsafeCell`] for details.
|
||||||
#[unstable(feature = "sync_unsafe_cell", issue = "none")]
|
#[unstable(feature = "sync_unsafe_cell", issue = "95439")]
|
||||||
#[repr(transparent)]
|
#[repr(transparent)]
|
||||||
pub struct SyncUnsafeCell<T: ?Sized> {
|
pub struct SyncUnsafeCell<T: ?Sized> {
|
||||||
value: UnsafeCell<T>,
|
value: UnsafeCell<T>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[unstable(feature = "sync_unsafe_cell", issue = "none")]
|
#[unstable(feature = "sync_unsafe_cell", issue = "95439")]
|
||||||
unsafe impl<T: ?Sized + Sync> Sync for SyncUnsafeCell<T> {}
|
unsafe impl<T: ?Sized + Sync> Sync for SyncUnsafeCell<T> {}
|
||||||
|
|
||||||
#[unstable(feature = "sync_unsafe_cell", issue = "none")]
|
#[unstable(feature = "sync_unsafe_cell", issue = "95439")]
|
||||||
impl<T> SyncUnsafeCell<T> {
|
impl<T> SyncUnsafeCell<T> {
|
||||||
/// Constructs a new instance of `SyncUnsafeCell` which will wrap the specified value.
|
/// Constructs a new instance of `SyncUnsafeCell` which will wrap the specified value.
|
||||||
#[inline]
|
#[inline]
|
||||||
@ -2026,7 +2026,7 @@ pub const fn into_inner(self) -> T {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[unstable(feature = "sync_unsafe_cell", issue = "none")]
|
#[unstable(feature = "sync_unsafe_cell", issue = "95439")]
|
||||||
impl<T: ?Sized> SyncUnsafeCell<T> {
|
impl<T: ?Sized> SyncUnsafeCell<T> {
|
||||||
/// Gets a mutable pointer to the wrapped value.
|
/// Gets a mutable pointer to the wrapped value.
|
||||||
///
|
///
|
||||||
@ -2060,7 +2060,7 @@ pub const fn raw_get(this: *const Self) -> *mut T {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[unstable(feature = "sync_unsafe_cell", issue = "none")]
|
#[unstable(feature = "sync_unsafe_cell", issue = "95439")]
|
||||||
impl<T: Default> Default for SyncUnsafeCell<T> {
|
impl<T: Default> Default for SyncUnsafeCell<T> {
|
||||||
/// Creates an `SyncUnsafeCell`, with the `Default` value for T.
|
/// Creates an `SyncUnsafeCell`, with the `Default` value for T.
|
||||||
fn default() -> SyncUnsafeCell<T> {
|
fn default() -> SyncUnsafeCell<T> {
|
||||||
@ -2068,7 +2068,7 @@ fn default() -> SyncUnsafeCell<T> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[unstable(feature = "sync_unsafe_cell", issue = "none")]
|
#[unstable(feature = "sync_unsafe_cell", issue = "95439")]
|
||||||
#[rustc_const_unstable(feature = "const_convert", issue = "88674")]
|
#[rustc_const_unstable(feature = "const_convert", issue = "88674")]
|
||||||
impl<T> const From<T> for SyncUnsafeCell<T> {
|
impl<T> const From<T> for SyncUnsafeCell<T> {
|
||||||
/// Creates a new `SyncUnsafeCell<T>` containing the given value.
|
/// Creates a new `SyncUnsafeCell<T>` containing the given value.
|
||||||
@ -2078,7 +2078,7 @@ fn from(t: T) -> SyncUnsafeCell<T> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[unstable(feature = "coerce_unsized", issue = "27732")]
|
#[unstable(feature = "coerce_unsized", issue = "27732")]
|
||||||
//#[unstable(feature = "sync_unsafe_cell", issue = "none")]
|
//#[unstable(feature = "sync_unsafe_cell", issue = "95439")]
|
||||||
impl<T: CoerceUnsized<U>, U> CoerceUnsized<SyncUnsafeCell<U>> for SyncUnsafeCell<T> {}
|
impl<T: CoerceUnsized<U>, U> CoerceUnsized<SyncUnsafeCell<U>> for SyncUnsafeCell<T> {}
|
||||||
|
|
||||||
#[allow(unused)]
|
#[allow(unused)]
|
||||||
|
@ -2396,7 +2396,7 @@ fn fmt(&self, f: &mut Formatter<'_>) -> Result {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[unstable(feature = "sync_unsafe_cell", issue = "none")]
|
#[unstable(feature = "sync_unsafe_cell", issue = "95439")]
|
||||||
impl<T: ?Sized> Debug for SyncUnsafeCell<T> {
|
impl<T: ?Sized> Debug for SyncUnsafeCell<T> {
|
||||||
fn fmt(&self, f: &mut Formatter<'_>) -> Result {
|
fn fmt(&self, f: &mut Formatter<'_>) -> Result {
|
||||||
f.debug_struct("SyncUnsafeCell").finish_non_exhaustive()
|
f.debug_struct("SyncUnsafeCell").finish_non_exhaustive()
|
||||||
|
Loading…
Reference in New Issue
Block a user