Vulkan-Hpp/snippets
Sharadh Rajaraman 6abd3f42a8
Use import std; guarded by macro (#1932)
* Initial build and tests setup

* Enable the `CppStdModule` test

* Snippets and generator changes

* Generated files changes

* Enable std module with macro

* Unconditionally use `import std` with C++23

* Add support for external `import std` control with `VULKAN_HPP_ENABLE_STD_MODULE`

- Rewrite `includes.hpp` and `macros.hpp`
- Unconditionally set `VULKAN_HPP_ENABLE_STD_MODULE` for `vulkan.cppm` to bug-fix
- Generated necessary files again

* Top-level CMake changes

* Reorganise logic, and propagate external macro correctly

* RAII: vulkan_hpp before ifdef

* Define `VK_USE_64_BIT_PTR_DEFINES` in `vulkan_hpp_macros.hpp`

* Generate the `VK_USE_64_BIT_PTR_DEFINES` clause from the XML instead of hardcoding it

* Refactored handling for `VK_USE_64_BIT_PTR_DEFINES`

- Updated condition to positive test for `#ifndef VK_USE_64_BIT_PTR_DEFINES` in `completeMacro`

* Added `#include <string.h>` to resolve `strnlen` missing in the module

* Use only `std.compat`

* FIx after rebase
2024-09-05 08:48:19 +02:00
..
ArrayProxy.hpp Introduce helper class vk::StridedArrayProxy; use it on functions with parameters having the 'stride' attribute. 2022-09-12 16:53:44 +02:00
ArrayProxyNoTemporaries.hpp Simplify helper class vk::ArrayProxyNoTemporaries. (#1908) 2024-06-25 17:43:55 +02:00
ArrayWrapper1D.hpp Make generated headers resistant to missing definition of NOMINMAX for windows builds. (#1906) 2024-06-17 14:51:12 +02:00
ArrayWrapper2D.hpp Refactor top-level function to generate vulkan.hpp 2022-08-01 16:40:15 +02:00
defines.hpp Make C++20 modules work with the defaultDispatchLoaderDynamic. (#1651) 2023-09-07 15:20:10 +02:00
DispatchLoaderBase.hpp Refactor top-level function to generate vulkan.hpp 2022-08-01 16:40:15 +02:00
DispatchLoaderDefault.hpp Add C++20 module interface file and tests (#1582) 2023-06-28 14:10:51 +02:00
DynamicLoader.hpp Check for libvulkan.1.dylib (#1755) 2024-01-02 13:56:05 +01:00
Exceptions.hpp Refactor top-level function to generate vulkan.hpp 2022-08-01 16:40:15 +02:00
Exchange.hpp Non raii handles move exchange (#1929) 2024-07-23 09:55:09 +02:00
Flags.hpp Fix Flags<T>::operator~() 2022-11-07 11:28:15 +01:00
includes.hpp Use import std; guarded by macro (#1932) 2024-09-05 08:48:19 +02:00
macros.hpp Use import std; guarded by macro (#1932) 2024-09-05 08:48:19 +02:00
ObjectDestroy.hpp Expose the dispatch member of deleters (#1569) 2023-05-03 12:03:28 +02:00
ObjectFree.hpp Expose the dispatch member of deleters (#1569) 2023-05-03 12:03:28 +02:00
ObjectRelease.hpp Expose the dispatch member of deleters (#1569) 2023-05-03 12:03:28 +02:00
Optional.hpp Refactor top-level function to generate vulkan.hpp 2022-08-01 16:40:15 +02:00
PoolFree.hpp Expose the dispatch member of deleters (#1569) 2023-05-03 12:03:28 +02:00
resultChecks.hpp Moved some implementation details into namespace detail. (#1840) 2024-04-08 11:40:53 +02:00
ResultValue.hpp Moved some implementation details into namespace detail. (#1840) 2024-04-08 11:40:53 +02:00
SharedDestroy.hpp Fix for shared handles for pool deleter (#1925) 2024-08-05 14:21:44 +02:00
SharedHandle.hpp Fix for shared handles for pool deleter (#1925) 2024-08-05 14:21:44 +02:00
SharedHandleSpecializations.hpp Shared Handles (#1619) 2023-09-19 13:04:36 +02:00
StridedArrayProxy.hpp Introduce helper class vk::StridedArrayProxy; use it on functions with parameters having the 'stride' attribute. 2022-09-12 16:53:44 +02:00
StructureChain.hpp Remove move-constructor and deleted move-assignment of vk::StructureChain. (#1949) 2024-08-26 09:45:57 +02:00
UniqueHandle.hpp Introduce implicit cast operators for vk::UniqueHandles, vk::SharedHandles and vk::raii::Handles (#1771) 2024-01-16 13:48:53 +01:00