struct to group per device device level functions into a custom namespace keeps track of the device to which the functions are bound additionally to the device related vulkan functions, convenience functions exist with same name but omitting the vk prefix as well as the first (VkDevice) parameter these functions forward to their vk counterparts using the VkDevice member of the DispatchDevice Moreover the same convenience functions exist for vkCmd... functions. In this case the first parameter is substituted with the public member VkCommandBuffer commandBuffer, which must have been set to a valid command buffer before usage.
Dlang vulkan device related func loader as struct members