Open
Conversation
Owner
|
This looks nice! Is there a way to avoid the presence of a |
Owner
|
I finally found the time to test this, and run into issues on MSVC: I think we'll need to reorganize this a little bit, but the overall idea is good! Maybe a solution would be to have the module;
#define WEBGPU_CPP_MODULE
#define WEBGPU_CPP_GLOBAL_MODULE_FRAGMENT_ONLY
#include "webgpu.hpp"
#undef WEBGPU_CPP_GLOBAL_MODULE_FRAGMENT_ONLY
export module webgpu;
#define WEBGPU_CPP_NO_GLOBAL_MODULE_FRAGMENT
#include "webgpu.hpp"
#undef WEBGPU_CPP_NO_GLOBAL_MODULE_FRAGMENT
edit: Also we should make sure to enclose the |
Author
|
Ah, I didn't know this doesn't work like this on MSVC. I unfortunately don't have time at the moment to look at how to fix that :/ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hi! Thanks for the project :) I've made a PR adding support for C++20 modules. In this implementation, module's source is
#ifdefed inside thewebgpu.hppfile. Thewebgpu.cppmmodule file simply definesWEBGPU_CPP_MODULEand includeswebgpu.hpp.This is how the header looks normally:
And this is how the header looks when the
WEBGPU_CPP_MODULEis defined. This is intended to be compiled as a standalone module unit: