diff --git a/ash/src/device.rs b/ash/src/device.rs index b0abcbbb7..c669530b5 100644 --- a/ash/src/device.rs +++ b/ash/src/device.rs @@ -6,7 +6,12 @@ use std::mem; use std::os::raw::c_void; use std::ptr; -/// +/// Holds a Vulkan [`vk::Device`] handle together with Vulkan 1.0 - 1.3 device-level function pointers loaded from it, +/// providing convenient wrappers to call these functions. +/// +/// The internal handle is available through [`handle()`][Self::handle()] if needed externally. + + #[derive(Clone)] pub struct Device { pub(crate) handle: vk::Device, diff --git a/ash/src/instance.rs b/ash/src/instance.rs index 405ae1751..ad31f4c5a 100644 --- a/ash/src/instance.rs +++ b/ash/src/instance.rs @@ -6,7 +6,12 @@ use std::mem; use std::os::raw::c_char; use std::ptr; -/// +/// Holds a Vulkan [`vk::Instance`] handle together with Vulkan 1.0 - 1.3 instance-level function pointers loaded from it, providing convenient wrappers to call these functions: +/// All functions from the Vulkan API (except those from extensions) which have a `VkInstance` as their first argument have become methods of `ash::Instance`. +/// Their `VkInstance` argument is always passed implicitly. +/// +/// The internal handle is available through [`handle()`][Self::handle()] if needed externally. + #[derive(Clone)] pub struct Instance { pub(crate) handle: vk::Instance,