From 2f501cd8b909ccf8249b30dedbb15e74012617ca Mon Sep 17 00:00:00 2001 From: SoniEx2 Date: Fri, 17 Jun 2022 12:53:26 -0300 Subject: Allow unwrapping the raw pointer --- Cargo.toml | 2 +- src/lib.rs | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 8927c06..527af5f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ltptr" -version = "0.1.1" +version = "0.1.2" edition = "2021" license = "CC0-1.0" description = "Checked raw pointers." diff --git a/src/lib.rs b/src/lib.rs index 42eb51b..2fcbe12 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -143,6 +143,17 @@ impl<'a, T: ?Sized> ConstLtPtr<'a, T> { _lt: PhantomData, } } + + /// Returns this `ConstLtPtr` as a raw pointer. + /// + /// # Safety + /// + /// This function is unsafe as an advisory: the returned raw pointer loses + /// the lifetime. + #[inline] + pub const unsafe fn as_raw(&self) -> *const T { + self.raw + } } impl<'a, T: ?Sized> MutLtPtr<'a, T> { @@ -160,4 +171,15 @@ impl<'a, T: ?Sized> MutLtPtr<'a, T> { _lt: PhantomData, } } + + /// Returns this `MutLtPtr` as a raw pointer. + /// + /// # Safety + /// + /// This function is unsafe as an advisory: the returned raw pointer loses + /// the lifetime. + #[inline] + pub const unsafe fn as_raw(&self) -> *mut T { + self.raw + } } -- cgit 1.4.1