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.
Although
windows-rs
harmonizes the differences between Win32 and WinRT types, they are encoded somewhat differently in .winmd files and have different type system constraints. In order to simplify the syntax of .rdl files, they will now require a file-level attribute to indicate whether to interpret the file as containing Win32 or WinRT types.You can use either
#![win32]
or#![winrt]
at the top of the file. For example, this .rdl file defines theTest.Type
struct as a WinRT types:You can then use
riddle
to generate a .winmd and the struct will be encoded as a WinRT type or you can useriddle
to generate Rust bindings and again the Rust bindings will use WinRT type semantics.When generating .rdl files,
riddle
requires theTYPE
configuration value set to eitherwin32
orwinrt
and it will generate a .rdl file containing only types from the applicable type system.