]> git.lizzy.rs Git - rust.git/commitdiff
remove Unique::from for shared pointer types
authorRalf Jung <post@ralfj.de>
Sun, 26 Apr 2020 17:00:57 +0000 (19:00 +0200)
committerRalf Jung <post@ralfj.de>
Sun, 26 Apr 2020 17:00:57 +0000 (19:00 +0200)
src/liballoc/collections/btree/node.rs
src/liballoc/raw_vec.rs
src/libcore/ptr/unique.rs

index 84d34db2d458a7a38992f7e3f239389d8e04c717..5569c293e2f6605e50ba1e0f7250188b19d4337a 100644 (file)
@@ -131,7 +131,7 @@ fn from_internal(node: Box<InternalNode<K, V>>) -> Self {
     }
 
     unsafe fn from_ptr(ptr: NonNull<LeafNode<K, V>>) -> Self {
-        BoxedNode { ptr: Unique::from(ptr) }
+        BoxedNode { ptr: Unique::new_unchecked(ptr.as_ptr()) }
     }
 
     fn as_ptr(&self) -> NonNull<LeafNode<K, V>> {
index 0780b33e53ae6f207a7aed3156efad46582dbf95..ca165b61e26a7da30b2c3e210992a2d8412e4d9a 100644 (file)
@@ -151,7 +151,7 @@ fn allocate_in(capacity: usize, init: AllocInit, mut alloc: A) -> Self {
 
             let memory = alloc.alloc(layout, init).unwrap_or_else(|_| handle_alloc_error(layout));
             Self {
-                ptr: memory.ptr.cast().into(),
+                ptr: unsafe { Unique::new_unchecked(memory.ptr.cast().as_ptr()) },
                 cap: Self::capacity_from_bytes(memory.size),
                 alloc,
             }
@@ -469,7 +469,7 @@ fn capacity_from_bytes(excess: usize) -> usize {
     }
 
     fn set_memory(&mut self, memory: MemoryBlock) {
-        self.ptr = memory.ptr.cast().into();
+        self.ptr = unsafe { Unique::new_unchecked(memory.ptr.cast().as_ptr()) };
         self.cap = Self::capacity_from_bytes(memory.size);
     }
 
index 87b56d951c6ce080166d04a07830f6850d699612..d93dc1f32623187bb8ffe2fd8c51e171091526e1 100644 (file)
@@ -3,7 +3,6 @@
 use crate::marker::{PhantomData, Unsize};
 use crate::mem;
 use crate::ops::{CoerceUnsized, DispatchFromDyn};
-use crate::ptr::NonNull;
 
 // ignore-tidy-undocumented-unsafe
 
@@ -171,19 +170,3 @@ fn from(reference: &mut T) -> Self {
         unsafe { Unique { pointer: reference as *mut T, _marker: PhantomData } }
     }
 }
-
-#[unstable(feature = "ptr_internals", issue = "none")]
-impl<T: ?Sized> From<&T> for Unique<T> {
-    #[inline]
-    fn from(reference: &T) -> Self {
-        unsafe { Unique { pointer: reference as *const T, _marker: PhantomData } }
-    }
-}
-
-#[unstable(feature = "ptr_internals", issue = "none")]
-impl<T: ?Sized> From<NonNull<T>> for Unique<T> {
-    #[inline]
-    fn from(p: NonNull<T>) -> Self {
-        unsafe { Unique::new_unchecked(p.as_ptr()) }
-    }
-}