Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7e947d33 authored by Andrew Walbran's avatar Andrew Walbran
Browse files

Improve formatting of doc comments and add more details.

Test: atest libnativewindow_rs-internal_test
Change-Id: If80fb2e8f3d692247357eb76e7f14f65f29ba8b8
parent bbe31e3a
Loading
Loading
Loading
Loading
+12 −6
Original line number Diff line number Diff line
@@ -203,8 +203,8 @@ impl HardwareBuffer {
        Self(buffer_ptr)
    }

    /// Creates a new Rust HardwareBuffer to wrap the given AHardwareBuffer without taking ownership
    /// of it.
    /// Creates a new Rust HardwareBuffer to wrap the given `AHardwareBuffer` without taking
    /// ownership of it.
    ///
    /// Unlike [`from_raw`](Self::from_raw) this method will increment the refcount on the buffer.
    /// This means that the caller can continue to use the raw buffer it passed in, and must call
@@ -220,14 +220,20 @@ impl HardwareBuffer {
        Self(buffer)
    }

    /// Get the internal `AHardwareBuffer` pointer that is only valid when this `HardwareBuffer`
    /// exists. This can be used to provide a pointer to the AHB for a C/C++ API over the FFI.
    /// Returns the internal `AHardwareBuffer` pointer.
    ///
    /// This is only valid as long as this `HardwareBuffer` exists, so shouldn't be stored. It can
    /// be used to provide a pointer for a C/C++ API over FFI.
    pub fn as_raw(&self) -> NonNull<AHardwareBuffer> {
        self.0
    }

    /// Get the internal `AHardwareBuffer` pointer without decrementing the refcount. This can
    /// be used to provide a pointer to the AHB for a C/C++ API over the FFI.
    /// Gets the internal `AHardwareBuffer` pointer without decrementing the refcount. This can
    /// be used for a C/C++ API which takes ownership of the pointer.
    ///
    /// The caller is responsible for releasing the `AHardwareBuffer` pointer by calling
    /// `AHardwareBuffer_release` when it is finished with it, or may convert it back to a Rust
    /// `HardwareBuffer` by calling [`HardwareBuffer::from_raw`].
    pub fn into_raw(self) -> NonNull<AHardwareBuffer> {
        let buffer = ManuallyDrop::new(self);
        buffer.0