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.
In addition to a
com_library!(..)
this PR introducescom_module!(..)
. This is the little brother of the original library macro. Thecom_module!(..)
does more or less everythingcom_library!(..)
does except for introducing any global extern functions.Both of these also support specifying other
module
s as exportable items. These modules are then recursively gathered for export in the finalcom_library!(..)
:com_library!(..)
specification.com_module!(..)
specifications.com_library!(..)
where it defines all exported built-in types (Allocator and ErrorStore). This removes the need to hard-code these in the attributes for creation.The actual module hierarchy is not maintained in the type info and will thus be ignored in IDL/C++ generation. Currently all classes must be globally unique within a COM library.
Closes #143